프로그래밍 QnA

amblance의 이미지

char * 에 대한 질문입니다.

공부하다 모르는것이 있어서 질문드립니다.

char 포인터 변수인 addr의 값은 0x0804a040으로 나오는데요.
char 포인터가 4바이트로 메모리에 할당되니깐 이걸 1바이트씩 값을 구해보려 합니다.

0x08
0x04
0xa0
0x40

이런식으로요. 아무리 해봐도 모르겠습니다.
조언좀 부탁드립니다.

#include <stdio.h>
 
char text[100] = “HELLO”;
 
int main(void)
{
   char *addr;
 
   addr = text;  
 
   printf(“%p\n”, &addr);      
   printf(“%p\n”, addr);        
   printf(“text : %p\n”, &text);  
   return 0;
}
trymp의 이미지

syslog-ng 에서 local port 를 명시적으로 지정해서 사용하고 싶습니다.


syslog-ng 라는 프로그램을 쓰고 있는데요.

여기서 /etc/utm/syslog-ng/syslog-ng.conf 파일에

목적지에 해당하는 IP 나 port 는 명시적으로 지정이 가능한데,

bind 하기 위한 local port 는 지정하는 항목이나 옵션이 안보이더군요.

syslog-ng 에서 로그서버쪽으로 UDP 패킷을 보낼 때 사용할 local port 를

지정하는 옵션이나 방법에 대해 알려주시면 감사하겠습니다.

munhoney의 이미지

PHP5에서 UDP 서버를 만드는데 well-known port로는 만들어지지 않네요.

PHP5에서 UDP 서버를 만드는데 well-known port로는 만들어지지 않네요.

php에서 알려진 포트로 서버를 만드는 방법이 있나요?

...
15 // create socket
16 $socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP)
17 or die("Could not create socket\n");
18
19 socket_set_option($socket, SOL_SOCKET, SO_REUSEADDR, 1);
20
21 if (($ret = socket_bind ($socket, $servAddr, $port)) < 0)
22 die (strerror ($ret));
...

이때 portf를 well-known port로 했는데 잘 안되네요.. 고수님들 왜 안되는지 알려주세용

hsnks100의 이미지

<완료> eclipse 에서 gdb 명령을 직접 쓸 수 있습니까?

eclipse 에서 STL 내용을 보는 방법이 궁금한데

찾아보니까 gdb 에서

string haha = "123"; 이면

pstr haha

라고 치면 123 이 뜬다고 하더라고요. 근데 그것을 eclipse 에서 명령을 치려고 하는데 어떻게 합니까?

결론은 eclipse 에서 STL 내용을 디버깅하는 방법을 알고 싶습니다. 부탁합니다.

whacker의 이미지

hrtimer handler에서 sched_setscheduler 호출

커널모듈 프로그래밍을 하고 있습니다.

모듈에서 hrtimer를 등록해 그 특정시간마다

모듈에 저장되어있는 특정한 태스크의 우선순위를 높여주고자 합니다.

그래서 hrtimer handler에서

export되어있는 sched_setscheduler 함수를 호출합니다. (유저영역에서 사용하는 sched_setscheduler와 다르게 task_struct를 인자값으로 받습니다.)

그런데 여기서 sched_setscheduler만 수행하게 되면 시스템이 다운되어 버립니다. 제 생각에는 데드락에 빠지는 문제인것 같은데

무엇이 문제를 일으키는지 모르겠습니다.

scheduler(); 함수또한 마찬가지 증상을 발생시키구요

현재 컨텍스트와 관련된 문제인것 같다는 생각이 드는것이

ioctl을 이용하여 유저프로세스가 컨텍스트를 가진상태에서 위 두 함수를 실행하면 문제없이 실행이 됩니다.

제가 무엇을 놓치고 있는것일까요?

k1d0bus3의 이미지

[완료]런타임 라이브러리 개념을 못잡겠습니다

런타임 라이브러리가 링크과정이아닌, 프로그램실행시 바인딩되는 라이브러리 아닌가요?
.
.
.
.
http://ko.wikipedia.org/wiki/%EB%9F%B0%ED%83%80%EC%9E%84_%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC
.
위키백과엔 컴파일러가 사용하는 라이브러리라고 되있는데
그럼 플랫폼에맞는 오브젝트파일 생성을위해 사용되는 라이브러리란 뜻인가요?

jjami1234의 이미지

리눅스 IDT 디스크립터 구조체 확인하는법 고수님들 많은 관심 부탁드립니다

우선 우분투에서 IDT 디스크립터의 구조체가 어떻게 정의가 되어 있는지 궁금합니다 고수님들 많은 지도 부탁드립니다.

그리고 커널에서 제공해주는 native_load_idt(*dest) api가 어떤역활을 하는지 알려주세요 ㅠ

kleeck의 이미지

[완료] 파일에서 읽어올 때 한글이 깨집니다. 봐주세요

안녕하세요

다름이 아니오라

한글처리에 대해서 질문을 드립니다. ㅜ.ㅜ 해결방법좀 알려주세요

현재 SMP8654 Board를 이용하여 작업중에 있습니다.

글꼴 라이브러리는 FreeType2를 이용하고 있습니다.

파일을 읽어서 배열에 저장한 다음 그 배열을 출력을 하면은 아래 첨부된 파일의 이미지를 보듯이 한글이 깨져버리는 현상이 있습니다.

그것도 전부 다 깨지는 것도 아니고 특정글자만 깨져버리는 현상입니다.

하지만 char를 하나 선언한 후에 똑같은 글자를 강제로 하드코딩하여 입력을 하여 출력을 시켜보면은 정상적으로 한글이 출력되는 것을 보실 수가 있습니다.

유니코드로 강제로 변환하여 한글을 출력을 하게 되는데요 iconv를 이용하게 됩니다.

왜 파일에서 읽을 때는 특정글자가 깨지는 걸까요? 강제로 하드코딩할때는 잘만 되는데...

빠른 답변 부탁드리겠습니다.

mosad34의 이미지

리눅스에서 코드 영역에 memcpy시 오류...해결방법은 뭘가요?

안녕하세요~

프로그램을 짜던중에 윈도우에서 사용중인 부분을 리눅스에 사용할 수 있도록 변환하고 있습니다.

그런데 여기서 문제가 일단 생기는 부분이

코드영역에 해당되는 주소에 memcpy로 뭘 덮어씌우거든요..

윈도우에서는 별 문제 없이 되는데

리눅스에서는 그냥 SIGSEGV 나오면서 뻗네요..

멤카피지 뭐 인자가 잘못들어가거나 그런건 아니구요

단지 목적지 주소가 코드영역이 이거든요..

리눅스에서 뭔가 메모리 보호속성이 걸려있어서 그런거 같은데...

아무리 찾아봐도 gdb로 메모리 속성보는 거나 뭐 그런게 안나와 있더라구요..

혹시나해서 찾아본 mprotect라는 함수로는 코드영역의 보호속성변경이 않된느거 같더라구용..ㅠㅠ

1. gdb로 해당 주소의 메모리 보호속성을 볼수 있는 방법이 있나요?? 뭐 쓰기만 가능 읽기만 가능 모이런거 나오는거요
2. 해당주소의 메모리 보호속성을 변경할수 있는 방법은 뭐가 있을가요..

bigbaby의 이미지

서버 소켓이 죽는 경우??

안녕하세요 날씨가 많이 춥네요 ㅎ 감기 조심하세요...

서버 프로그램을 짜고 있는데요...

select 시에 Bad file descriptor 에러가 발생하고 있습니다.

select 함수에는 서버 소켓을 fd_Set에 세팅한 fd_Set 을 전달하며,

클라이언트의 접속 요청을 처리하기 위해 사용됩니다.

즉, select 함수가 리턴되면, accept()함수를 호출하기 위해 사용됩니다.

근데, 갑자기 select 시에 bad file descriptor에러가 발생하고 서버에 행이 걸리고 있습니다.

어떤 경우에 서버 소켓에서 bad file descriptor이 발생할 수 있을까요???

페이지

프로그래밍 QnA 구독하기