프로그래밍 QnA

shpark05의 이미지

fork 와 malloc 의 메모리 문제

안녕하세요 ?

다름이 아니라, fork 와 malloc 에서 문제가 있어서요.
아래와 같은 구성이 있다고 할때요.

Quote:

char *test;

int main()
{

test = malloc( 100 );

if(!fork())
{
test_a();
}

sleep(100);
free(test);
}

int test_a()
{
free(test);
sleep(10);
}

double free 로 결과가 나옵니다.

아마도 fork 개념이 잘 못 되었다는데 99% 을 걸지만,
혹시 몰라서 질문을 올립니다.

추신 : 일부 다른 OS 프로세스에서는 gcc 3.x 에서 double free 에러 메세지가

dummy999의 이미지

[소켓] 수신할때 두번나눠서 Recv()합니다.

버퍼사이즈가 8192 입니다.

송신에서 8000정도를 수신쪽에 쏴주니까.
처음할때는 8000정도를 그냥 읽더니
두번째는 이걸 두번에 끊어서 recv()를 합니다.
한번에 읽을수있는방법이 없을까요?

또 OS에서 지원해주는 소켓 사이즈를 코딩으로 볼수없을까요?
[code:1]
소켓번호=[4547748]
Recv Size =[8028]
메시지 : A수신

소켓번호=[4547748]
Recv Size =[12]
메시지 : B수신

소켓번호=[4547748]
Recv Size =[4380]
메시지 : A수신

clearsmile의 이미지

커널 2.2에서 2.4로 오면서 ftp에 말썽이 좀 생겼습니다.

일단 제가 하고 있는것에 대해 간단히 설명하자면..

linux에서 ftp데몬을 띄워놓았습니다..
서버가 되겠죠..

클라이언트는 윈도우에서 VC++로 작성을 하였습니다.

클라이언트에서 서버로 파일을 보내달라고 요청을 하면
서버에서는 파일을 찾아 보내줘야 하는데...
550 no such file....어쩌구 하면서 파일을 찾을 수가 없다고 나옵니다..
분명히 파일은 있는데말이죠...

신기한건..커널 2.2일때는 문제없이 잘 돌아가는데 2.4에서 그러는건왜 그럴까요??

cbycby의 이미지

time_t 시간 제한에 대해서

현재 64bit 시스템이 보급화 되기전까지
time_4 변수는 4byte로 2038년까지만 시간을 계산할 수가 있습니다.

64bit 시스템으로 전환하기전 기존 시스템으로
2038년 제한을 없앨 수 있는 방법은 없는건가요?

시간관련 함수자체를 새로이 제작해서 2038년 제한을 푼다고해도
시스템 자체가 2038년 제한이 있기때문에 아무런 의미가 없는건가요?

이와 관련되어서 고민 및 알고 계신분들의 조언을 부탁드립니다.

nekoko의 이미지

gtk+에서 사소한 질문.. ㅡ+ㅡ

샘플 코드를 보다가 gtk_statusbar_pop()이라는 함수가 나와서
책을 보니 설명이 부실하길래 gtk.org의 api 레퍼런스를 찾아봤거든요. 두번째 인자가 context id라고 나와있는데 이게 뭔가요??
책이나 gtk.org에도 설명이 없는 것 같아서 함수 본체를 들여다보려고 했는데 gtkstatusbar.h라는 헤더파일엔 헤더만 있고 본체는 어딨는지 모르겠어요 ;_;
gtk_statusbar_pop() 뿐만 아니라 다른 api 함수들의 본체는 어느 디렉토리에 가야 내용을 볼 수 있나요??

iris422의 이미지

커널내 코드 일부를 제가 만든 모듈이 insmod 되면 실행되지 않

제가 만든 모듈을 insmod 했을 때 커널 내 코드 일부를 실행시키지 않으려고 합니다.
물론 rmmod 했을 때는 정상적으로 실행이 되어야 하구여..
이런 기능을 구현시킬 방법이 있을 까여?
#ifdef 등으로 구현이 될까여?

그리고..
커널의 네트워크 stack에서 skb를 가지고 작업 중인데여..
skb->priority 값이 중요할까여?
0~15 정도까지의 값을 가지는 것 같긴 한데여..
이 값을 0으로 무조건 설정하면 문제가 생길까여?

sadrove의 이미지

php에서 배열을 인자로 넘길때..

php에 익숙하지 않은 초보입니다..^^.
A라는 파일에서 DB에 접속하여 각 레코드의 값을 차례로 가져와서 db_text라는 배열에 차곡차곡 담았습니다...
그리고 이 배열을 B라는 파일로 넘기려고 합니다..
그래서 아래와 같이 넘겼는데요..

<html>
<head>
<meta http-equiv="refresh" content="0; url=./B.php?text=<?=$db_text?>">
</head>
</html>

막상 B파일에서 출력해보면..
[code:1]
for($j=0; $text[$j] != null; $j++){
echo $text[$j] . "<br>";

mabux의 이미지

웹서버에서요..

안녕하세요..
웹 서버에서 클라이언트에게 서버의 내용을 다 보냈는지
확인하는 함수나 방법이 어떤 것이 있을까요?

예를 들어
http://120.0.0.1/~aaa 에 접속시
서버에서는 해당 페이지(메인페이지)가 제대로 전송이 되었다는 것을 확인하고 싶습니다.

어떤 방식으로 해야 하나요?

제가 사용하는 서버는 thttpd 를 사용하지만..
다른 서버에서의 동작이라도 알려주시면 감사하겠습니다.

그럼 감기 조심하시고요..
항상 좋은 하루 보내세요~

dummy999의 이미지

⊙_⊙;; 이상한문제..

사무자동화산업기사 필기A형
(2004. 3. 7시행)

  제3과목 프로그래밍 일반

53. C 언어에서 사용되는이스케이프 시퀀스(escape - sequence)와 그 의미의 연결이 옳지 않은 것은?
  가. qn : new line
  나. b : null character
  다. t : tab
  라. r : carriage return

답이 무엇입니까?
여기서 정답은 "나"인데 과연 그거하나만 답이됩니까?
제가 모르는건지 답이틀린건지..
분명히 "가"도 답이될거같은데..
jx2h의 이미지

서버 프로그램 작성중인데 *.conf파일을 만들고 있습니다

일단 conf파일설정을 읽어들이는 라이브러리는 작성했습니다만
conf파일에서 port 같은경우는 쉽게 해결이 됩니다
그런데 변수값이 여러개일경우(허용해줄 ip list같은...)는
참 난감하네요
httpd.conf 같은 것은 어떻게 읽어들이는지 궁금합니다
혹은 알고계시는 소스라도 좀 추천해주세요(GPL에 속해있는 :) )

페이지

프로그래밍 QnA 구독하기