728x90
반응형

CS/운영체제 5

운영체제 3강

이 포스팅은 반효경 운영체제 강의 를 듣고 정리하는 글이다. fork, exec실습 코드는 깃허브에 있다. 프로세스 생성 부모 프로세스는 1개만 존재하고, 자식 프로세스들을 생성한다. copy on write (cow) 기법 주소 공간 자식은 부모의 공간을 복사한다. 자식은 그 공간에 새로운 프로그램을 올린다. 유닉스에서는 fork 시스템 콜 을 통해 부모 프로세스와 똑같이 복사한다. 수행 부모 자식이 공존하며 수행되는 모델 자식이 종료될 때까지 기다렸다가 수행되는 모델 프로세스 종료 프로세스가 마지막 명령을 수행한 후 운영체제에게 이를 알린다. (exit) 자식이 부모에게 output data를 보낸다. 프로세스의 각종 자원들이 운영체제에게 반납됨 부모 프로세스가 자식의 수행을 종료시킨다. (abort..

CS/운영체제 2022.08.22

운영체제 2강 - 2

동기식, 비동기식 입출력 프로세스가 입출력이 진행되는 동안에 CPU 점유는 중요하지 않음 입출력 명령을 계속 대기하면 동기, 해놓고서 다른 작업을 수행하면 비동기 구현 1 I/O가 끝날때 까지 계속 대기해 CPU를 낭비시킴 매시점 하나의 입출력만 일어남 구현 2 입출력이 완료될 때까지 해당 프로그램에서 CPU를 빼앗음 다른 프로그램에서 CPU를 가지고 연산 수행 입출력 작업이 완료되면 해당 프로세스에 CPU할당 스레드 프로세스 내부의 CPU 수행단위가 여러개 있는것이 스레드 프로세스마다 code, data, stack 이 주어짐 CPU수행과 관련된정보는 스레드가 별도로 가지고있고, 나머지는 공유한다. 스레드의 구성 program counter register set stack 스레드의 장점 다중스레드 구..

CS/운영체제 2022.08.18

운영체제 2강 - 1

반효경 운영체제 강의 정리 컴퓨터 시스템 2 사용자 프로그램이 운영체제를 통해서 무언가를 해야할 때에는 시스템 콜을 이용한다! 프로그램 카운터 (PC, Program Counter) 프로그램 카운터는 CPU안에 포함되어 있는데, 이는, 메모리에서 다음 실행되어야할 작업의 주소가 들어있다. CPU는 이 주소를 바탕으로 다음 작업을 찾아가 작업을 수행하게 된다. 인터럽트가 발생한다면? 인터럽트가 발생한 경우에는, 프로그램 카운터가 가리키고 있는 주소로 바로 이동하지 않고, CPU제어권이 OS로 가게 되면서 해당 인터럽트를 우선으로 처리해준다. 동기식, 비동기식 입출력 비교적 최근에 내가 29cm의 지원을 했을때를 떠올려본다. 그때 당시, 자바에서 csv파일을 읽어들여야 하는 작업이 있었다. 그 부분을 토대로..

CS/운영체제 2022.08.11

운영체제 1강

반효경 교수님의 운영체제 강의를 정리하는 포스팅 System Structure & Program Execution 1 📌 컴퓨터 시스템 구조 컴퓨터 시스템의 구조는 아래와 같다. 이미지 출처 - https://asfirstalways.tistory.com/115 컴퓨터 시스템에는 크게 중앙 처리장치인 CPU, 메모리, 그리고 외부 장치들인 디스크, 키보드 등등 으로 구분된다. 컴퓨터는 외부에서부터 데이터를 읽어와 연산을 한 후에 다시 출력해주는 방식으로 처리한다. 📌 CPU CPU는 Memory에 올라간 프로그램들의 명령들을 하나하나 읽어들여 수행하는 역할을 담당한다. I/O마저도 이 CPU가 관리하게 되면, 너무나도 많은 인터럽트가 발생하게 된다. 이런 경우에는 CPU가 효율적이지 못하다고 할 수 있다..

CS/운영체제 2022.08.11

프로세스 상태

사용자가 프로그램을 실행시키면 메모리에 올라가며 프로세스가 실행된다. 지금의 컴퓨터는 수많은 프로세스들이 실행된다. 시분할 시스템이 사용되는 운영체제에서는 여러개의 프로세스를 돌아가면서 실행한다. cpu가 병렬적으로 여러 프로세스를 막 실행시키는것이 아니라, 한 순간에 하나의 프로세스만 처리가 가능하다. 그렇지만, 그 속도가 우리가 눈치챌 수도 없을 만큼의 속도로 분할되어 실행되기 때문에 여러 프로세스가 동시에 실행되는것 처럼 느끼게 한다. 프로세스는 시분할 시스템 처리를 위한 5가지의 상태가 존재한다. 생성 이 상태는 PCB를 생성하고, 메모리에 프로그램 적재를 요청한 상태 메모리에 프로그램 적재를 승인받으면 준비상태로 넘어간다. 준비 CPU를 사용하기 위해 기다리고 있는 상태 준비 상태의 프로세스는 ..

CS/운영체제 2022.08.10
728x90
반응형