본문 바로가기

Computer Science/Computer Systems

(28)
[Lecture 1-3] Processes Part III #Process Management OS 는 process들을 관리 하기 위해 API (system calls)들을 제공한다. 프로세스를 관리 하기위해선 여러가지의 단계가 필요하다. Process Creation: 프로세스를 생성하는 단계이다, 보통 프로세스의 새로운 환경을 생성하는 것을 포함한다. Process Termination: 이단계는 일반적인 프로세스 종료와 비정상적 프로세스종료를 포함한다. 일반적이 프로세스 종료 (Normal termination) 은 main() 함수에서 return된 exit() 함수같은 것이고, 비정상적 종료 (Abnormal termination) 은 보통 예상치못한 crash나 외부 개입에 의해 프로세스가 "kill" 된상태이다 Process interaction:..
[Mini-Lecture] Character Sets and Unicode #Character Sets Character Set, 문자 집합이란, 컴퓨터에서 정보의 표현 수단으로 사용되는 글자들의 집합을 뜻한다. 문자 집합을 더 자세하게 알기 위해선 bytes가 무엇인지 알아야 한다. Byte는 디지털 정보 즉 데이터 처리의 기본 단위이다. 바이트는 1-bit가 8개, 즉 8비트이고, 옥텟으로 불리기도 한다. 바이트는 8비트 이기 때문에 2^8승 즉 256개의 값을 나타낼 수 있다. 이진법 에서는 0-255, 16진법 에서는 0x00 에서 0xff까지 나타낼수 있다. 문자랑 인간의 언어를 적는 데 사용하는 추상적이고 시각적인 기호 체계이다. 아래 예시를 한번 보자. 우리는 아무런 문자나 숫자 없이도 아래 그림들을 연결 지을수 있다 (사과, 나무, 해바라기, 프리첼, 비치볼, 집..
[Lecture 1-2] Processes Part II (Process State) #Process State 프로세스의 상태는 크게 3가지, 세분화 되었을 때는 많으면 5가지에서 15가지 까지 나뉠 수 있다. 프로세스 상태의 개수는 OS 아키텍쳐 마다 다르게 디자인 되어있기 때문에 OS 마다 다를 수 있다. 우리는 크게 3가지 process state를 알아보자. Running 프로세스가 하나의 명령어를 할당 받아 CPU에서 실행 시키고 있는 상태 Ready 프로세스가 운영체제의 승인을 받고 CPU에서 실행이 준비된 상태 (CPU 지정을 기다리는 상태/No CPU is ready at this state, CPU 제외 다른 자원들은 프로세스의 메모리 로드 상태) Blocked (waiting) 프로세스가 어떠한 event (보통 I/O 요청에 의한 syscall , 또는 동기신호[sy..
[Lecture 1-1] Processes Part I #프로세스란? 컴퓨터 운영체제에서 프로세스란 컴퓨터에서 실행되고 있는 컴퓨터 프로그램을 말한다. 프로그램과 프로세스의 차이는 컴퓨터에 다운로드만 돼있는 명령어와 정적 데이터는 프로그램이고, 그 프로그램을 실행시키는 순간 프로세스가 된다. 운영체제는 각 프로세스 마다 locial flow를 부여하고 single-thread 프로그램은 하나, multi-thread 프로그램에는 여러 개의 flow를 부여한다. 또, 운영체제는 private, protected address space와 같은 memory address를 부여하고 file descriptor와 같은 abstracted resources도 부여한다. # Context Switching Context switching은 CPU가 현재 실행하고 있는..