프로그래밍 QnA

you의 이미지

커널내부(파일시스템 레벨)에서 디스크접근하려면...?

다시말해서 open, read를 사용못하구요
디스크에 접근하여 읽어들일 데이터가 있는데...
어떻게 해야할지 난감하네요
ll_rw_block() 같은 함수를 사용하려고 했더니
디스크의 어느부분에 접근할지...안될거같고...

예를들어
커널내에서 /dev/hda7의 첫번째블록을 읽어들이고자 한다면
그에 해당하는 함수나 무슨 방법이 없을까요?
아, 그리고 커널에 붙일 모듈프로그램입니다.

부탁드립니다.

stypr의 이미지

쉘 프로그래밍 질문?

ls -d *.c *.h | sed 's@.*@diff -c & /usr/local/src/&@' | sh

여기에서 @게 무엇을 의미하는지 모르겠습니다.

그리고 전체적인 의미도 한번 명확하게 설명해 주십시오

epro74의 이미지

tcgetattr의 기능이,,,,,

serial program에서 tcgetattr의 역활이 현재 설정된 serial 정보를 가져오는 것이 맞는지요?
그런데 저 함수를 호출하기 전에

struct termios tio;
static long baudrate;
baudrate = baud;
if(tcgetattr(fd, &tio)!=0){
perror("set_terminalure(), getting attributes");
return -1;
}
printf("baudrate : %d \n", baudrate);

이런식으로 했더니 baudrate 값이 0으로 바뀝니다. 왜 그런지 궁금해요.
baud는 static 상수로 전역으로 선언도 해보고, 메인에서 인자로 받아서 넘겨보기도 했지만 결과는 똑같더라구요.

jklee의 이미지

Multicast packet을 이용한 영상 데이터 플레이관련 질문

서버쪽에서 영상데이터를 멀티캐스트로 보내주고, 호스트들에서 받아 플레이를 해줄 생각입니다.

영상 데이터가 계속 보내지는 시점에서 도중에 접속하게 되는 호스트의 처리 및 처음부터 데이터를 받게되는 여러 호스트 들에서 이를 어떠한 형식으로 받아서 처리해야 할지 좀 막연합니다.

고수님들 조언 부탁 드립니다.

nidle의 이미지

db를사용하지않고 그냥c로만 안될가요

답변 감사합니다..
그런데 DB를 사용하지않고 순수 C,C++가지고만 만들순없을가요,
제가 아직 DB사용을 못해서,, C만가지고 만든다는게 효율성없고
귀찬다는 것은 알지만.. 우선만들어볼려구요,
앞에서질문했듯이 KEY부분만 메모리에 올려서정렬하구 검색해서 찾으려는 단어와
KEY가 일치했다고해서 하드에있는 TXT파일에 뜻부분하고(RECORD) key를 어떻게 연결해서
찾은 key에해당하는 record를 불러올수있을가요,, 고수님들이 답변 기다리겠습니다..

sadrove의 이미지

연결리스트에서 메모리 에러...

//존재하는 노드의 개수를 비교하는 프로그램
void List::nodeLength()
{
	int cntLength=0;

	ListNode *t;
	t = first;

	while(1){
		cntLength++;

		cout << t->link;
		if(!t->link) break;		//마지막 노드(마지막 노드는 link가 0)이면 카운트 정지
		t = t->link;
	}
	cout << "Node Length = " << cntLength << endl;

	delete t;
}

위 소스는 연결리스트에서 노드의 개수를 알아내는 함수인데요..
메인에서 node1.nodeLength();

blue39의 이미지

GTK+ 텍스트뷰에 문자 출력시 줄 바꿈에 대해 질문합니다..

안녕하세요~~

텍스트 뷰에 문자를 출력할때 줄 바꿈이 않되서 계속 한 줄에 문자들이 찍혀버립

니다. 텍스트 버퍼에서 문자를 읽어올때나 출력하고 나서 줄바꿈을 적용해주는

함수가 있는지요? API 레퍼런스 에서 몇개 찾아서 해 봤는데 다 다른 용도의

것들인지 실패했습니다. 조언 부탁드립니다.

noohgnas의 이미지

__guard , __stack_smash_handler 에 관한 질문입니다.

예전에 김정균님이 올리셨던 글을 읽었습니다.

http://bbs.kldp.org/viewtopic.php?t=19468

글을 읽어 보니 gcc 에서 overflow 방지를 위해서 패치를 했다고 했습니다.
물론 AnNyung 1.0 에서는 적용이 되어서 문제가 없었습니다.

제가 인스톨 할려는 a.tar.gz 가 이 overflow 방지 기술을 요구하는듯 합니다.

아래는 제가 맞이한 오류코드 입니다.

undefined reference to `__guard'
undefined reference to `__stack_smash_handler'

위에 김정균님이 쓰신글을 읽어 보면 __guard, __stack_smash_handler 를 임의로 정의해 주면 컴파일 할 수 있다고 했습니다. 임의 정의를 어떻게 하는지 알고 싶습니다.

ceo236의 이미지

signal 번호를 어떻게 알수 있을까요?

HP_UNIX 에서 main을 실행하면 thread1 과 thread2를 create하고,
main에서는 소켓을 select()걸고 있습니다.
각 thread는 외부프로세스로부터 들어오는 queue1, queue2를 block 모드로로 msgrcv()하고 있구요.

그런데, main에서 alarm(2)걸면, 2초후에 thread의 (1또는2 번갈아 가면서 발생.) msgrcv()에서 errno EINTR가 발생합니다.
이때, 정말 EINTR이 ALRM때문에 발생하였는지 검사하기 위해,

[code:1] rc = msgrcv(id, buf, sizeof(buf), type, 0)
if (errno = EINTR) {
// 여기에 errno EINTR를 발생시킨 signo를 display.

iamslash의 이미지

static linking 과 dynamic linking 에 대해서...

가령 liba.a 와 liba.so 가 있습니다. 이둘이 한 디렉토리에 있을때말입니다.

제가 main.cpp 를 컴파일해서 링크할때 옵션에 -la 이렇게 해주면
어느것이 링크가 되는 것인지요? static linking 을 하고 싶을때와
dynamic linking 을 할때 각각 어떤 옵션을 주어야 하는지 궁금합니다.

페이지

프로그래밍 QnA 구독하기