Linux

    /Proc FileSystem - Process in More detail

    이번 글에서는 Proc filesystem에서 process 관련된 내용을 좀 더 이해하기 위해 별도로 글을 작성하게 되었습니다. 여러분들이 Terminal에서 "cd /proc/self" 명령어로 해당 디렉토리로 이동하게 되면 현재 실행중인 쉘에 대한 정보를 가진 디렉토리입니다. 해당 디렉토리를 살펴보죠. linuxias@desktop:/proc/self$ ls -altotal 0dr-xr-xr-x 9 linuxias linuxias 0 7월 9 22:20 .dr-xr-xr-x 260 root root 0 7월 9 21:59 ..dr-xr-xr-x 2 linuxias linuxias 0 7월 9 22:20 attr-rw-r--r-- 1 linuxias linuxias 0 7월 9 22:20 autogr..

    /Proc Filesystem - Process

    /Proc Filesystem - Process

    The /Proc Filesystem for Debuggingproc - process infomation pseudo-filesystem(Process infomation) 리눅스가 인기 있는 이유 중 하나는 UNIX 시스템의 좋은 feature들을 결합시킨 점입니다. Proc 파일시스템은 그 좋은 feature들 중 한가지 인데요, 대다수의 Linux 배포판에 포함되어 있습니다. proc 파일시스템은 /proc에 마운트되어 있으며 kernel data 구조에 대해 인터페이스를 제공하고 있습니다. proc 파일시스템의 파일들은 READ-ONLY 이지만, 몇몇의 파일들은 커널 변수를 변경하여 적용할 수 있도록 WRITE가 가능합니다. proc 파일시스템의 구성요소를 하나하나 살펴보도록 하시죠. 이번 글에..

    Strace - trace system calls and signals

    Strace - trace system calls and signals

    Stracetrace system calls and signals strace는 linux에서 발생하는 문제들을 해결할 수 있는 여러 툴 중 system call을 추적할 수 있는 강력한 툴입니다. System call은 open, write, read, mmap... 등등 여러분들도 잘 알고 계신 함수들입니다. System calls은 User process가 kernel에 어떠한 작업을 요청하기 위한 인터페이스 역할을 합니다. (그림 출처 : Self-Service Linux : Mastering the Art of Problem Determination) 여기서 말하는 요청이란 User process에서는 접근할 수 없는 disk, network, memory 같은 시스템 자원에 접근하고 IPC, ..

    Porting Linux applications to 64-bit systems

    이 글은 Porting Linux applications to 64-bit systems 을 참조하여 작성한 글입니다.더욱 명확한 내용 확인을 원하시는 분들은 위 URL 참고하여 주시기 바랍니다. 지금은 64-bit 시스템이 서버나 데스크탑에서 흔하게 사용되지만 예전엔 아니였습니다. Linux는 64-bit 프로세서들을 사용하기 위한 첫 번째 cross-platform 운영체제들 중의 하나였습니다. 많은 소프트웨어 개발자들은 예전에 개발했던 32-bit 기반 어플리케이션들을 64-bit 환경으로 포팅하기 위한 필요성을 느끼고 있습니다. 64-bit 프로세서의 보급화가 빠르게 이뤄지면서 이 필요성은 지속적으로 중요하게되었죠. UNIX나 다른 UNIX 계열의 운영체제와 같이, 리눅스도 64-bit 환경에 대..

    [Linux] Writing udev rules, udev 규칙 작성법에 관하여..

    gitbook에서 보기 Writing udev rules (udev rules 작성 위한 참고문서) 2015. 10. 23 linuxias@gmail.com Introduction 이 문서를 읽기 전에.. 이 문서는 아래 문서를 번역하여 제공하는 것 입니다. 올바른 해석이 아닐 수도 잘못된 지식이 포함되어 있을 수 있으니 참고해 주시기 바랍니다. 내용 진행 상 불필요한 부분은 제거한 부분도 있으니 원문 또한 참고하면서 봐주시기 바랍니다. 잘못된 내용이나 수정이 필요한 내용이 있다면 linuxias@gmail.com 로 메일로 해당 내용 보내주시면 감사하겠습니다. 많은 도움이 되었으면 좋겠습니다. 원문 : http://www.reactivated.net/writing_udev_rules.html 이 문서에..

    [파일입출력] 5. lseek()으로 파일 탐색하기

    [파일입출력] 5. lseek()으로 파일 탐색하기

    파일을 열어 이젠 원하는 위치로 자연스럽게 파일의 위치(?), 커서(?)를 lseek() 시스템 콜을 이용하여 이동해보겠습니다. 시스템 프로그래밍을 하다보면 어떤 경우 파일의 내가 원하는 위치로 커서를 이동시키고 싶은 경우가 있습니다. 그럴 때 자주 사용되는데요, lseek()이란 시스템 콜을 이용하면 된답니다. #include #include off_t lseek (int fd, off_t pos, int origin) 입력 인자 int fdopen() 시스템 콜로 열린 파일을 가리키는 파일 지정 번호 off_t pos 파일에 이동할 위치 지정 originlseek() 시스템 콜에 인자(아래 표 참고) 반환값 off_t파일 쓰기 성공 : 파일의 새로운 오프셋 파일 쓰기 실패 : -1 위의 내용을 보면 ..