프로그래밍 QnA

eyes852의 이미지

[완료]fgetc, fputc, fflush 함수 소스를 어디 가서 볼 수 없을까요?

저 셋 함수 말고도 파일 스트림을 사용하는 함수들이 어떤 식으로 구현되어있는지 보고 싶은데요...

안에서는 아마 open, read, write, close들로 작성되 있겠지만,
어떤식으로 구현해놨는지 몹시 궁금해서요;

내부적으로 버퍼를 가지고 있다고 알고 있는데
버퍼를 어떤 식으로 사용하고 있는지도 궁금하네요;

akayong의 이미지

freebsd 에서 process별 메모리 사용량을 구하는 방법이 뭐가 있을까요?

안녕하세요,

실제 돌아가고 있는 서버들에 대하여 모니터링 시스템을 만들고자 합니다.

리눅스 같은 경우, /proc/?PID?/status 에서 값을 갖고 와서 계산을 하고
윈도우 같은 경우 윈도우 API 를 사용하여 계산을 하는데

freebsd 같은 경우 어떻게 특정 process의 메모리 사용량을 구할 수 있을지 알수가 없네요(freebsd는 처음이라.. 헤메고 있습니다)
구글링을 아무리 해 보아도, 잘 나오지 않는데,
freebsd 는 /proc/?PID?/status 에는 메모리 관련 내용이 없는것 같고
/proc/?PID?/mem 이 있지만, 이부분은 access 할 수가 없네요 권한이 r이 설정 되어 있어도...

top 말고 알 수 있는 방법 있을까요?

academic의 이미지

[완료] awk 질문

1.

텍스트 파일이 다음과 같을 때

item1 100
item2 200

특정 항목의 값을 추려내는 것은 다음과 같이 간단한데,

awk '$1 == "item2" {print $2}' *

텍스트 파일에 item2가 있으면 그 값을, item2가 없으면 대신 item1의 값을 추려내려면 어떻게 하는지 모르겠습니다.

가르침을 부탁합니다.

2.

간단한 awk 입문 정도를 목표로 한다면 참고할만한 책이나 자료가 있으면 말씀해주세요.

sed & awk나 Effective awk Programming 같은 책은 전문적인 것 같아 좀 부담스럽네요. awk를 자주 쓰는 것도 아니라서요.

tatchi의 이미지

unlikely 함수의 효용.

굳이 unlikely를 쓰는 이유를 잘 모르겠습니다.
예를 들어,

if(unlike(host[i] == ':'))

는 그냥

if(host[i]==':')

로 써도 무방하지 않은가요?

검색하여 보니, 파이프라인 사용시 깨지는 것을 방지하여 준다...
라고는 하는데 무슨 말인지 도통 모르겠습니다.

lmk378의 이미지

module 작성후 insmod시에 unknown symbol in module 에러가 발생합니다.

dmesg를 확인해보면

unknown symbol find_task_by_vpid

라고 나옵니다.
위 함수는 kernel의 include/linux/sched.h 에 extern 되어있는 함수로
pid를 받아와 해당 process의 task_struct를 반환합니다.
위 함수를 module 소스에서 제거하면 insmod시 정상등록됩니다.
문제는 저 함수를 꼭 써야하기 때문인데요
kernel 소스상의 함수를 module에서 사용하지 못할 수도 있나요?

mattkjeon의 이미지

[JFS: defragmentation]

안녕하세요?

Linux에서 JFS를 filesystem으로 사용중에 있습니다.

JFS에서 defragment 관련 코드가 소스에서 사라진지 오래된 것 같은데요.
필요가 없어서 사라진 것인지? 유지보수가 안되어 없어진 것인지 찾기가 힘드네요.
2002~2003년 코드에는 있었던 것 같은데, 그 이후 소스에서는 찾아볼 수가 없습니다. 관련된 내용을 알고 계신분은 답변 부탁 드리겠습니다.

익명 사용자의 이미지

MFC가 욕먹는 이유..?

MFC 가 욕을 먹는다는데 욕을 먹는 정확한 이유가 뭔가요? (마소에서도 버린 거라는데..)

gihun99의 이미지

linux에서 process의 cpu사용량을 구하는 걸 이렇게 하면 되나요?

system programming 수업의 숙제로 simpletop 프로그램을 만들고 있는데요(top 의 간이판(?))
대충 나머지는 어떻게 구현했는데 cpu 사용량 구하는게 확실하지 않습니다
구글링해보니 cpu_percent = (delta_utime + delta_stime) / (delta_start_time/sysconf(_SC_CLK_TCK)) 이렇게 나오는데요
이렇게 구현해서 프로그램을 실행해봐도 프로세스들의 cpu사용량이 대부분 0이라 이게 제대로 작동하고있는지 확인할 수가 없네요..
이 방법이 제대로 된 방법인가요?

코드는 아래 붙입니다(c언어를 사용했습니다)

typedef long long int simpletop_num_t;

//struct simpletop_proc_t 에는 /proc/[pid]/stat안의 정보들이 해당되는 각 변수에 저장되어있습니다.

ilovecpl의 이미지

'

jtylor의 이미지

/etc/inittab에서 agetty를 조건에 따라 올리는 방법.


리눅스에서 /etc/inittab 내용보면,

s0:2345:respawn:/sbin/agetty -L 38400 ttyS0 vt100
s1:2345:respawn:/sbin/agetty -L 38400 ttyS1 vt100

윗부분을 조건을 줘서 원하는 것만 실행할수 있는 방법좀 알려주세요.

조건은 파일로 저장해두었고, 그값에 따라

agetty -L 38400 ttyS0 vt100 또는 agetty -L 38400 ttyS0 vt100 를 실행하려고 합니다.

쉘로 만들어서 /sbin/agetty 부분을 변경해봤더니 agetty가 실행은되나, 시리얼 콘솔이 연결되지 않네요.

답변부탁드립니다.

페이지

프로그래밍 QnA 구독하기