프로그래밍 QnA

viol9245의 이미지

리눅스에서 값이 이상하게 나오네요 .. 아시는분 도와주세요

아래소스를 리눅스에서 컴파일하고 실행하시면.. 음수값이 나옵니다..
유닉스에서 하면.. 정상값이 나옵니다..
왜그럴까요?
----------------------------------------------------------------------------
[code:1]#include <stdio.h>

struct FEP_11
{
unsigned long aaa;
};

int main()
{
char buf[5];

buf[0] = 0x00;
buf[1] = 0x89;
buf[2] = 0xAE;
buf[3] = 0xD7;
buf[4] = '\0';

abcd(buf);
}

int abcd(struct FEP_11 *rcv)

jai의 이미지

rpm 스펙파일에서 _with_up 은 무엇입니까?

코드는 rpm 스펙파일에서 매크로를 선언하는 부분입니다.

%define buildup 1
%define buildsmp 1
...
%define dashtargetboard %{?targetboard:-%{targetboard}}
%{?_with_up: %{expand: %%define buildup 1}}
%{?_with_smp: %{expand: %%define buildsmp 1}}

1. rpm --showrc | grep targetboard 를 실행했습니다.
아무 값도 찍히지 않아요.
스펙파일 내에서도 targetboard 를 찾을 수 없습니다.
정의된 곳을 어떻게 찾을까요?

2. ?_with_up 이 도대체 무슨 말일까요?

leolo의 이미지

getpwuid() 함수 아시는분?

getpwuid()도 strdup()와 같이 메모리 누수가 발생하는 함수인가요?
그런거 같은데.. 만약 그렇다면, free는 어떻게 시켜주죠.
dmalloc으로 해보니까.. 메모리 누수가 생기던데요..
제가 테스트를 잘못한건지...
알려주세요..
redhat7.3에서 dmalloc을 사용하였습니다.
#dmalloc -l ./logfile -i 100 high > dmalloc_setup
#source dmalloc_setup

이후 아래의 소스코드를 만들었습니다.
물론 아래내용을 define하고요.
#ifdef DMALLOC
#include <dmalloc.h>
#endif

다음으로 컴파일을 하고 실행화일을 수행하였습니다.

래리버드의 이미지

[질문] DHCP 소스를 보다가...

지금 DHCP소스를 보고 있는데요..
좀 이해가 안 되는 부분이 있어서요..
분명 함수 호출같은데.. 여지껏 봐왔던거랑 틀려서 질문 올립니다.

 /* Set up the bootp packet handler... */
    bootp_packet_handler = do_packet;

bootp_packet_handler 선언을 이렇게 되있고요.

void (*bootp_packet_handler) PROTO ((struct interface_info *,
                     struct dhcp_packet *, int, unsigned int,
                     struct iaddr, struct hardware *));

do_packet 선언을 이렇습니다.

MasterQ의 이미지

[질문] 파일이 많은 디렉토리에서 실행권한 간단히 없애기.

파일이 많고 섭디렉토리도 같이 있습니다..

근데 nfs로 긁어왔는지...

모두 실행권한이 생겨버렸습니다..

chmod -x 하고 싶은데...

디렉토리는 빼고 chmod를 하고 싶은데 좋은 팁 있으면 알려주세요~~

chmod되지 않은 디렉토리안에 있는 파일들까지 chmod가 되면

더더욱 좋겠네요...

그럼!!

superkdk의 이미지

[질문] cgi의 defunct process

c로 cgi를 만들어서 사용하고 있습니다. (게시판)
여러개의 cgi process가 뜨다보면 defunct process들이 떠서 task 구조체에
남아있습니다. defunct는 자식 프로세스가 exit한 후에 부모 프로세스가
SIGCHLD 시그널을 처리하지 않을 경우에 떠 있는다고 알고 있습니다.

cgi는 httpd에서 fork되어 실행되므로 httpd이 부모프로세스인데, httpd이
SIGCHLD 시그널을 처리하지 않지는 않을 것 같습니다.

cgi 프로그램에서 특별히 defunct process를 유도할 수 경우가 있는지
알고 싶습니다.

alsgo123의 이미지

[질문] 네트웍 recv(...) 함수의 동작

[code:1]
if(connect(sockfd,(void*)&servaddr,sizeof(servaddr)) < 0) {
/* step2: Connect(...); */
perror("Connect:");
close(sockfd);
exit(EXIT_FAILURE);
}

sprintf(sbuf,"GET %s%s\n\n",SURL,argv[1]); /* set HTTP request String */
send(sockfd,sbuf,strlen(sbuf),0);

if((recv(sockfd,buf,BUF_SIZE,0/*MSG_PEEK*/)) <= 0) {
perror("Recieve:");

p_teto의 이미지

[질문]CPU의 1분평균 Load averages구하기

1분평균 averages값은 /proc/loadavg 를 보면 나와 있습니다.

거기에 나와 있는 값을 직접 C언어로 구현을 해야하는데, 어떤 정보를 읽어

들여야 하는지 전혀 감이 안잡히고 있습니다. 도움 부탁드립니다. ^^

김희상의 이미지

[질문] 커널 모듈에서 대량의 메모리 할당 방법

6GB의 메모리를 가지고 있는 x86계열의 SMP 머신이 있는데요...
RedHat이 깔려있고요...Kernel은 2.4버전대 입니다.
(6GB를 제대로 인식하는 걸 보니 bigmem patch가 적용된거 같더군요....자세히는 잘 모르겠네요)

커널 모듈에서 1~2GB정도의 메모리를 할당하고 싶은데....
아니면, 1~10MB정도의 물리적으로 연속된 페이지들을 수십~수백(?)개정도
할당해도 좋고요.....

1. kmalloc, __get_free_pages들을 해봐도 2^5 * PAGE_SIZE를 넘어서는 값들은 할당이 실패할 경우가 많더군요

anfl의 이미지

QT 질문입니다.

안녕하세요. 답답한 마음에 글을 올리게 되었습니다.
QT Desiginer로 form을 만들고 핸들링 과정에서 문제가 생겼습니다.

[code:1]
#include <stdio.h>
#include <fcntl.h>
#include <sys/types.h>
#include <unistd.h>
#include <ctype.h>
#include <string.h>
#include <sys/stat.h>
#include <assert.h>

#include <qstring.h>
#include <qtextstream.h>

#define NAMELENGTH 41
#define NROOMS 10
#define UN_USEROOM 0xff
#define FILENAME "residents.txt"
#define kor(str) QString::fromLocal8Bit(str)

페이지

프로그래밍 QnA 구독하기