FILEDESCRIPTOR

포스트: 3
Tags

Posts

3 posts

fd - file descriptor(파일 디스크립터) 갯수 확인 및 업데이트 방법

Guillermo Austin Kim|2017년 12월 23일

리눅스 커널에서는 하나의 프로세스가 소유할 수 있는 파일 디스크립터의 갯수를 정해 놓았는데요.그럼 이 갯수를 어떻게 알 수 있을까요? 아래 명령어로 확인할 수 있어요.ulimit -a 결과를 보니 "nofiles(descriptors) 1024" fd의 갯수는 1024이네요.adb shell ulimit -atime(cpu-seconds) unlimitedfile(blocks) unlimitedcoredump(blocks) 0data(KiB) unlimitedstack(KiB) 8192lockedmem(KiB) 64nofiles(descriptors) 1024processes 6609flocks

[Linux][Kernel] fd(file descriptor: 파일 디스크립터) 디버깅 CrashTool

Guillermo Austin Kim|2017년 12월 20일

"echo c > /proc/sysrq-trigger" 명령어로 강제 커널 패닉을 유발시킨 다음 코어 덤프를 받아 보았어요.crash> bt -I C01003AC -S C59C3E20 0xD110E040PID: 4944 TASK: d110e040 CPU: 0 COMMAND: "sh" #0 [ ] (do_DataAbort) from [ ] pc : [ ] lr : [ ] psr: 60010013 sp : c59c3f10 ip : c1920700 fp : bee5765c r10: 00000000 r9 : acf2a284 r8 : 00000000

[Linux][Kernel] fd(file descriptor: 파일 디스크립터) 등록 - 코드리뷰

Guillermo Austin Kim|2017년 12월 17일

리눅스 시스템 프로그램을 보면 fd를 얻어오는 코드를 자주 볼 수 있어요. fd를 보통 file descriptor라고 하죠.특정 프로세스에서 파일 핸들이라고 이야기하고요. 그럼 fd가 커널 공간에서 어떻게 생성되고 저장되는지 살펴보도록 할께요.#include #include #include #include #include #include #define MAX 1024 int main (int argc, char ** argv[]) { int fd; int readn = 0; int writen = 0; char