1. fscanf 사용법 fscanf는 File스트림으로부터 서식대로 값을 저장하는 함수 > https://dojang.io/mod/page/view.php?id=608 2. fscanf 의 서식문자열을 sprintf로 생성하기 sprintf 는 서식을 문자열로
step execution (단계적 실행)breakpoint (설정된 중단점까지 실행)memory examination (메모리나 레지스터 값 확인)gcc -g 옵션 빌드필요. 이후 $ gdb a.out실행run 또는 r리스트 보기 (소스코드 및 라인번호 출력)l브레이
C Pre Processor(cpp) 가 \`\`\`cpp hello.c > hello.igcc -S hello.ias -o hello.o hello.s$ file a.outa.out: ELF 64-bit LSB executable, x86-64, version 1 (
Unix Shell 에서 쉘스크립트 또는 프로그램(명령어)을 실행하는 다양한 방법이 있고, 그에따라 프로세스가 실행되는 방식에는 차이가 있다. . cmd.sh : current process 에서 실행됨source cmd.sh : current process . 와
Init precess. 커널이 부팅완료 된 뒤에 첫번째 pid 프로세스 부터 순차적으로 실행되는 서비스 관리 시스템. 서비스는 운영체제에서 부팅중 실행되어 백그라운드에서 계속 동작하는 프로그램(프로세스)을 말한다. 시스템에서 필요한 서비스들은 굳이 부팅이 완료된 이
$ make target will issue command1 and command2, if dependency1 and dependency2 are exist..PHONY 로 지정된 지시자는 명령을 나타냄. 예를 들어, 만약 해당 디렉터리에 clean이라는 파일이 있으
stack frame 은 함수 call이 발생할때 stack 저장공간에 쌓이는 데이터다. Activation record 라고 부르기도한다. stack frame 사이즈는 컴파일 타임에 계산된다. 로컬변수, 리턴addr, 매개변수 등이 저장되어있다. stack over
CMake는 빌드시스템이 아니라 빌드시스템을 만들어주는 도구다. 가령 빌드시스템을 make를 쓴다면 CMake가 Makefile을 만들어주고. ninja를 쓴다면 .ninja 빌드파일을 만들어 줄것. GNU autotools 와 유사한 역할이다. autotools는 너
이 글은 https://www.youtube.com/watch?v=yTXCPGAD3SQ 를 보고 배운것을 정리한 것임.아래 7라인의 파싱 문법으로 코드를 파싱한다고 할때 yacc는 우측과 같이 파싱트리를 생성하고 계산한다. 각 토큰을 만날때 문법내용을 이용해
리눅스 커널은 아직 C89 를 사용. 함수 중간에 변수 선언이 안된다. 하지만 최근 C11로 변경 움직임.https://www.zdnet.com/article/linus-torvalds-prepares-to-move-the-linux-kernel-to-mode
char \*strtok(char \*\_String, char const \*\_Delimiter);첫번째 분리된 토큰 = strtok(대상, 구분자)더이상 자를 문자열이 없으면 NULL리턴strtok() 의 첫번째 인자가 문자열 포인터면 첫번째 토큰을 리턴하고tok
만약 여러 프로세스가 하나의 스크립트를 실행하는데, 해당 스크립트에 공유 자원을 R/W하여, 스크립트를 Atomic하게 수행해야 한다면 어떻게 해야할까?flock은 util-linux 에 포함된 터미널용 locking 메커니즘 명령도구이다. https://g