본문 바로가기

전체 글

(341)
[OS] 4. Process Management Chapter 4. Process Management 누가 프로세스를 생성하는가?부모 프로세스가 자식 프로세스를 생성한다.부모 프로세스 하나가 여럿의 자식 프로세스를 생성할 수 있다.이는 트리 형태로 부모-자식 관계가 나타난다.프로세스는 기본적으로 CPU자원을 할당받고 본인의 일을 수행하는 숙명이다.결국 부모 프로세스로부터 생성된 자식 프로세스는 부모 프로세스와 CPU자원을 얻으려는 경쟁 구도가 형성된다.운영체제로부터 받은 CPU자원을 부모 프로세스와 공유하는 경우도 있지만,일반적으로는 공유하지 않는 모델로 서로 경쟁하는 구도가 형성된다. 그렇다면 부모 프로세스는 누가 생성하는가?사용자가 프로그램을 실행시키면 운영체제를 통해서 생성된다. 프로세스 생성과정자식은 부모의 공간을 복사한다.이를 복제 생성된다고..
[OS] 3-2. Process II / Thread란 무엇인가 / Thread 종류 Chapter 3-2. Process IIThreadA thread is basic unit of CPU utilization or lightweight process= Program counter, register set, stack spaceThread 끼리 공유하는 부분= code section, data section and OS resources 동일한 일을 하는 부분이 많은 프로세스를 여러 개 생성하는 것은 메모리 낭비이다. 그래서 프로세스는 하나만 생성하고 Program counter만 여러 개 생성한다. 즉 CPU수행 단위를 여러 개를 두는 것이다. 이것을 쓰레드(Thread)라고 한다. 각각 다른 Instruction을 수행하려면 Program counter 값이 존재해야 하고, 메모리에..
[OS] 3-1. Process I / 프로세스란 무엇인가 / Process Control Block / Scheduler Chapter 3-1. Process 프로세스란 무엇인가Process is program in execution프로세스란 현재 실행중인 프로그램을 말한다.그리고 이 프로세스를 구성하는 요소들을 프로세스의 문맥(process context) 프로세스의 문맥은 무엇을 말하는가1. CPU 수행 상태를 나타내는 하드웨어 문맥, Program Counter 등의 register들 값을 포함한다.PC는 다음에 수행할 명령어(code)의 위치에 대한 정보(주소값)를 담고 있다.CPU가 할당되었을 때, PC가 가리키는 부분부터 수행해나가면 되는 것이다. 2. 프로세스의 주소 공간을 포함한다.즉, code, data, stack 각각의 공간에 어떠한 값이 들어있는가를 나타내는 주소값을 포함한다.현재 변수의 값은 얼마인가..
[OS] 2-2. System Structure & Program Execution II Chapter 2-2. System Structure & Program Execution II 입출력 방식에는 두 가지로 나뉜다.동기식 입출력, 비동기식 입출력이다. synchronous I/OI/O 요청 후 입출력 작업이 완료된 후에어 제어권이 사용자 프로그램에 넘어가는 방식이다.동기식 입출력은 구현 방법에 따라서 또 두 가지로 나뉜다. 구현방법1>I/O 작업이 끝날 때까지 CPU를 갖고 있는다. 즉 반환하지 않는다.이렇게 되면 매 시점마다 하나의 I/O만 일어날 수 있으며 CPU의 낭비가 상당하다.구현방법2>I/O가 완료될 때까지 해당 프로그램에게서 CPU를 빼앗는다.I/O 처리를 기다리는 줄에 그 프로그램을 줄 세운다.그리고 다른 프로그램에게 CPU를 할당한다. asynchronous I/OI/O요..
[OS] 2-1. System Structure & Program Execution I Chapter 2. System Structure & Program Execution I 시스템의 구조와 프로그램의 실행에 대한 설명을 하기 위해 대략적인 도식을 나타내었다. CPU의 여정CPU내부에는 메모리보다 처리 속도가 빠른 Register라는 작은 공간이 존재한다.그 중 다음에 수행할 명령어를 저장하는 PC(Program Counter)라는 것이 있는데,이를 통해 다음 명령어를 수행하게 된다.Instruction 은 주로 4Byte이기 때문에 PC값은 명령어를 하나씩 수행할 때마다 4씩 증가하게 된다.CPU는 다음 수행할 명령어를 수행하기 전에 인터럽트가 들어온 게 있는지 확인한다.(Interrupt Line)인터럽트가 들어오면 현재 하고 있던 작업을 멈추고(이 때, 수행한 정도를 기억하게 되는데..
[OS] 1. Introduction to Operating System Chapter 1. Introduction to Operating System 운영체제란 무엇인가?운영체제란 컴퓨터 하드웨어 바로 윗단에 설치되는 소프트웨어이다. 좁은 의미에서는 커널을 의미한다. 커널이란 운영체제의 핵심 부분으로 메모리에 상주하는 부분이다. 여기서 메모리란 주기억장치 상의 Main Memory를 의미한다. 넓은 의미에서는 커널 뿐만 아니라 주변 시스템 유틸리티를 포함한 개념으로 말할 수 있다. 메모리에 상주하지 않고 독립적으로 실행되고 종료될 수 있는 프로그램들을 말한다. 운영체제란 왜 필요한 것인가? 존재의 목적은 무엇인가?일반 사용자들이 컴퓨터란 기계를 사용할 때, 하드웨어적인 요소를 모두 고려하면서 사용하게 된다면, 전문화된 고도의 지식을 필요로 할 것이다. 그러나 이 운영체제가 ..
곡성 / 나홍진 감독 / 곽도원, 황정민, 천우희 / 2016 오랜만에 영화다운 한국영화를 보았다.추격자, 황해의 감독인 나홍진 감독님의 영화이다. 개봉하고나서 각종 스포를 다 맞은 다음에 본 영화였지만그래도생각할거리가 충분하고,한 번 더 보고 싶은 마음이 든 영화였다. 영화를 보고 나서 그 해석을 읽는 맛도 꽤 쏠쏠했다.두번째 포스터가 엄청난 스포를 담고 있다고 논란이 된 포스터이다.영화 마지막에 등장하는 황정민의 사진들.그 사진들의 정체가 무엇인지는 모르겠으나,범인이라고 의심받을 정도는 충분하다고 생각하는 것 같다. 시놉시스영화의 스토리는 이렇다.곡성이라는 마을에, 사람들이 죽어가기 시작한다.'외부인'의 유입 때문이라는 소문이 돌기 시작한다.어떠한 현상에 대해 꼭 그 이유를 알아야 한다는 인간의 특성을 반영한 것으로,이 현상의 원인을 그 외부인에서부터 찾고 있다..
아침형 인간 vs 저녁형 인간? 오늘도 어김없이 아무 생각없이 페이스북 뉴스피드를 내리면서 휴식을 취하고 있었다.고개를 끄덕이게 되는 짤?을 만나게 되서 이렇게 글을 쓰게 되었다.대부분의 사람들이 아침형 인간이 바람직하고 규칙적인 삶을 살아가는 생활형이라고 생각하고 있다고 알고 있다.나 또한 얼마전까지 아침형 인간이 바람직하다고 생각했다.저녁형 인간도 자신의 컨디션에 맞출 줄 아는 사람이다. 라고 말하는 사람들은자신이 게으르다는 사실을 합리화하기 위해 하는 말로밖에 들리지 않았다. 하지만 최근에 이 생각이 바뀌었다.내일의 스케줄을 정상적으로 소화할 수 있을 정도면,아침형 인간이든, 저녁형 인간이든, 자신에게 맞추면 그만인 것이다.무조건 아침형 인간이 바람직하다고 생각하는 것은 옳지 않다고 생각한다.아침형 인간인 사람들은 난 아침형 인간..