일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 컴퓨터공학과
- 그래프
- 컴공과
- 문제풀이
- 개발
- bfs
- 코테
- 스택
- 오퍼레이팅시스템
- coding
- 정석
- 코딩
- cs
- 알고리즘
- 백준
- OS
- Operating System
- vector
- 정석학술정보관
- DP
- 너비우선탐색
- c++
- 브루트포스
- 북리뷰
- Stack
- 오에스
- 컴공
- 자료구조
- 구현
- Computer science
- Today
- Total
목록컴공과 (14)
Little Jay

어느덧 마지막 파트에 다다랐다. Sys Level I/O를 다루기만 하면 시스템프로그래밍이라는 과목을 한번 다 돌아보게 되는 것이다. 이제는 UNIX I/O가 어떻게 작동하는지 알아보자. UNIX I/O Overview 파일은 Byte의 Sequence이다. 앞서서 배열, 구조체 등을 배울 때에도 잠깐 언급을 했었지만, 파일은 결국 Byte가 선형 배열로 놓여있는 것이다. 이를 Linear Array of Bytes라고 한다. 또한 모든 I/O Device는 파일로 편현이 된다. 예를 들어서 /dev/tty 라고 하면 터미널에 접근할 수 있게 된다. 그리고 각각의 파일은 시스템 내에서 수행하는 타입이 있다. Regular File : 임의의 데이터를 담고 있다. Directory:파일과 관련된 그룹의 I..

Wait 앞서서 Parent Process는 Child Process를 "Reap" 한다고 언급했다. 이는 Parent Process에서 wait 혹은 waitpid 함수 호출을 통해서 진행이된다. int wait (int *status); 위에 있는 것이 wait 함수의 원형인데, 말 그대로 자식 Process의 종료 상태를 얻어내는 것을 목표로한다. 다시말해 Child Process가 끝날때까지 current process를 progress시키지 않고 suspend한다. 이 함수의 return 값은 끝나기를 기대하는 Child Process의 PID 번호이다. 그것이 가리키는 정수는 자식 프로세스가 종료된 이유와 종료 상태를 나타내는 값으로 설정이 된다. 이를 알아보기 위해서는 wait.h 파일에 들..

Termination Process는 세 가지 이유로 종료가 된다. 먼저 main 함수의 routine에 의해 자발적으로 종료가 되는 경우, exit함수로 자발적인 종료를 호출하는 경우, 마지막으로 종료를 수행하는 signal을 받을때이다. 다들 알고있겠지만 exit함수에 대한 간단한 소개를 하고 넘어가자면, exit함수는 말그대로 process를 terminate시킨다. 이 함수에는 번호가 들어가는데, 그 범위는 0~255까지 들어갈 수 있으며 0은 정상종료의 의미, 0이 아닌 경우에는 error상황이다. C의 stdlib.h 헤더파일에는 void atexit(void *(func) (void)); 가 들어가있다. 자세한 설명은 아래 링크의 블로그를 참조하면 되겠다. 이 함수는 exit할 때 다른 함수..

Process 프로세스에 대한 정의는 다양하다. OS를 다루는 부분에서도 설명을 또 할것이지만, 여기서도 정의를 해보겠다. Process는 프로그램이 실행 준비가 되어 메모리에 올라가있는 상태이다. 이를 반대로 말하자면 Program은 아직 Code의 형태로 Disk에 존재하는 것이다. 조금더 상세히 명세를 하자면, Program의 Code와 Data가 Memory에 저장된 상태이다. 이때 OS는 PCB라는 Data Structure을 활용해서 Process를 나타낸다. Process는 각 Program에게 두 가지 Key Abstraction을 제공한다. 이는 Independent Logical Control Flow, Private Address Space인데, Independent Logical C..