프로그래밍 QnA

colorcat의 이미지

[질문] fork로 생성한 child process 에서 strtok사용

에 초보적인 질문이지만

책에서 보면 thread에서는 strtok함수를 사용할 시에
문제가 발생할 수도 있다.. 고 하던데요..

그럼 Process를 생성해서 child를 생성해서
child에서 strtok를 사용해도 같은 에러가 발생할까요..

???

wafe의 이미지

[C++]구조체 내부의 크기가 1인 배열

struct Sta
{
    ...
    int array[1];
};

이런 구조체를 사용할 때는 malloc을 써서 struct Sta * 형으로 동적으로 만들어 주어야 하나요?

Sta *a = (Sta *a)malloc(sizeof Sta + 배열크기);

이렇게 말이지요. new로는 불가능할 것 같은데... C++에서 malloc을 쓰자니 왠지 꺼림칙합니다.

그리고 이런 배열을 뭐라고 불러야 하는 건가요? "가변 길이 배열"하고는 좀 다른 것 같아서요.

s0me의 이미지

aix 에서 메모리 정보를 구하는 법...

장비의 물리적 메모리는 512 * 2 = 1024M입니다.
$ bootinfo -r
1048576

rosetta stone 의 aix 메모리 정보 구하는 소스를 가져와서 테스트를 했습니다.

다음과 같이 나옵니다.

Real memory: 0.0M free 3375.9M procs 208.1M files 3584.0M total
Virtual memory: 0.0M free 204.8M used 204.8M total

물리적 메모리 1024에서 얼마가 사용중이고 나머지는 얼마인지 알고 싶은데요.
위에서 알려준 정보만 가지고는 알수가 없네요.
위에서 나타낸 리얼메모리가 무엇을 나타내는지도 파악이 안되구요.

sjang의 이미지

리눅스 epoll를 이용하여 SMTP 서버를 구현 중입니다만...

epoll를 다룬 예제를 보면 아래와 같은 코드가 있습니다.

[code:1]

struct epoll_event ev, *events;

for(;;) {
nfds = epoll_wait(kdpfd, events, maxevents, -1);

for(n = 0; n < nfds; ++n) {
/***************** 요기 **********************/
if(events[n].data.fd == listener) {
/*******************************************/
client = accept(listener, (struct sockaddr *) &local,
&addrlen);
if(client < 0){

innersys의 이미지

[질문] vmware에서 브트로더프로그램 테스트할때

부트로더프로그램을 어셈블러로 만들어서 bin파일을 rawrite로 디스켓에 써서 플로피로 돌리면 잘돌아가는데...
매번 이런식으로 테스트하다보니 너무 불편하더군여
그래서 vmware로 테스트 하려는데 브트섹터를 com이나 bin혹은
winimage로 만든 이미지파일을 올려도 안돌아가네여...
vmware에서 컴퓨터로 실제로 돌리는것처럼 텟트하는 방법없습니까?
부트로더파일을 어떤식의 이미지로 만들어서 돌린다던지...
그런방법있으면 답변부탁드립니다.

someone의 이미지

exit(0)과 return 0에 어떤 차이가 있나요?

프로그램을 종료시킬때
별 생각 없이 return 0과 exit(0)을 마구 혼용해서 썼습니다만
하다보니 차이가 있는것 같네요.. -0-;;
(당연히 다른건데 개념없이 마구 사용해왔던 걸까요?? ㅠ_ㅠ)

return 0은 함수에 반환값이 생겨서 종료되는거고
exit(0)은 프로세스를 약간 강제로? 종료시키는 차이인것같은데

구체적으로 동작에 어떤 차이가 있는지요?

hanzo69의 이미지

대기중인 epoll에 fd를 추가하면 어떻게 됩니까?

안녕하세요.

epoll로 multi cpu 시스템에서 쓸 overlapped socket IO 라이브러리를 제작중인데 의문이 생겨서 글을 올립니다.

질문 1.
만약 A 쓰레드가 epoll_wait()로 epoll set에 이벤트를 대기중인 상황에서, B 쓰레드가 epoll_ctl()로 위의 epoll set에 socket fd를 추가하면 어떻게 되는지 궁금하더군요.

현재 복수의 쓰레드에 각각의 epoll set에 이벤트 대기를 하게 만들었는데, 쓰레드 사이에 accpt된 peer socket fd를 주고받게 해야 할 일이 생기더군요.

질문 2.
만약 A 쓰레드가 epoll_wait()로 epoll set에 이벤트를 대기중인 상황에서, B 쓰레드가 epoll_ctl()로 위의 epoll set에 추가된socket fd를 close하면 문제가 생기는지 알고 싶습니다.

moonrepeat의 이미지

오라클 + XML을 사용할 생각인데 책좀 추천해주세요

현재 컴공과는 아니지만 얼떨결에 프로젝트를 하나 하게 되었습니다.
oracle10g+xml+jsp로 인사관리 및 문서결재 서비스 프로그램을
만드는게 이번 프로젝트의 목표인데 교수님이 알듯모를듯한 힌트만
계속 주십니다...... :evil:
(교수님이 오라클 1년 사용 라이센스까지 구입하셔서 빼도박도 못하
는 참 난감한 상황입니다.)

일단 프로젝트 비용으로 ORACLE9i XML Handbook을 샀는데
내용의 2/3이 은근슬쩍 오라클 자랑인듯한 느낌이 듭니다. 그리고
오렐리에서 나온 oracle xml을 슬쩍 봤는데 oracle8i 기준으로 서

vudghkzm의 이미지

doxygen으로 문서화하는데 .h 파일에 밖에 적용이 안되는 이유

VC++ 6 에서 doxygen + doxbar 로 소스를 문서화 하는데, .h 파일에 밖에 적용이 되지 않는거 같습니다. .cpp 등 전체 파일에 적용이 되게 할려면 어떻게 해야 하나요?

air74의 이미지

udp 패킷 recv 시 select 와 poll 의 차이점 ???

안녕하세요.

하나의 소켓에 대하여 recv시 blocking 을 피하기 위하여 현재는 poll(pollset, ct , 0)을 사용 하였습니다.

/*설정된 횟수 만큼 루프를 돌면서 가능한한 모든 메세지 수신한다. */
while (loop_count < thresh){ 
  events = poll(pollset, ct , 0 ); /* no blocking */
  if (events > 0) {
      rval = recvmsg(sn_xudp.fd, &msg_hdr, 0);
      queuing_msg(); /*-> 수신한 메세지 큐잉 */  
  }
  loop_count++;
}

여기서 질문 드립니다.

페이지

프로그래밍 QnA 구독하기