일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- useState
- typeScript
- 프로그래머스
- 비동기
- 개발공부
- Operating System
- 컴퓨터공학
- 알고리즘
- python algorithm
- java
- execution context
- 자료구조
- 코드스테이츠
- 파이썬 알고리즘 인터뷰
- 자바스크립트
- codestates
- context switching
- node.js
- 파이썬
- Python
- Computer Science
- 자바
- OS
- react 기초
- 글또
- Zerobase
- JavaScript
- REACT
- 운영체제
- algorithm
- Today
- Total
목록운영체제 (4)
Back to the Basics
제로베이스 컴퓨터 공학자 따라잡기 온라인 완주반 강의를 듣고 정리한 포스팅 주요 IPC 기법인 pipe , message queue , shared memory 에 대해 알아보자. IPC 기법들은 System programming에서 직접 실습을 해야 하는 부분이기 때문에 간단하게 개념에 대해서만 정리를 하였다. 1. pipe(파이프) pipe는 하 나의 process의 output이 다른 process로 들어간다. 이를 단방향 통신이고 한다. fork()로 자식 프로세스를 만들었을 때 부모와 자식 간 통신할 때 사용된다. 파이프 IPC는 기본적으로 아래와 같이 진행된다.(그림 참고) pipe로 fd[0]과 fd[1]을 먼저 생성하고 주소값을 넣는다.(이 부분은 아래의 코드를 통해 더 이해해보자) 부모에..
제로베이스 컴퓨터 공학자 따라잡기 온라인 완주반 강의를 듣고 정리한 포스팅 프로세스 간 커뮤니케이션 - InterProcess Communication (IPC) Overview 기본적으로 Process는 다른 Process의 공간을 접근할 수 없다. 만약 서로 공간을 쉽게 접근할 수 있다면 Process의 데이터나 코드가 바뀔 수도 있기 때문에 원칙적으로 프로세스 간의 공간 접근은 불가능하다. Process 간 통신이 필요하기 때문에 IPC(InterProcess Communication)라는 특별한 방법을 사용한다. Process 간 통신이 필요한 경우 많은 CPU를 사용하는 경우 ( 대부분 그렇지만) Process 간 상태를 확인하고 데이터를 송, 수신할 수 있는 수단이 필요한다. fork() 시스..
제로베이스 컴퓨터 공학자 따라잡기 온라인 완주반 강의를 듣고 정리한 포스팅 프로세스와 컨텍스트 스위칭 - PCB, PC, SP Process를 다른 Process로 바꾸는 메커니즘을 context switching이라고 하였다. context switching을 위해 PCB라는 registor를 이용하여 process의 정보를 참조한다. 그렇다면 PCB는 정확히 무엇이고 어떻게 생겼을까 ? PCB PCB는 Process Contril Block의 약자로, 프로세스에 상태를 저장하는 데이터구조로 OS에서 관리하고있다. Process Context Block이라고도 하며, 프로세스가 실행중인 상태를 캡쳐하고 구조화하여 저장한다. PCB는 아래와 같은 구조로 이루어져있다(c 구조체로 이루어져있음) (Linux..
제로베이스 컴퓨터 공학자 따라잡기 온라인 완주반 강의를 듣고 정리한 포스팅입니다. 배치 처리 시스템 (일괄 처리 , Batch Processing) Queue 자료구조와 비슷한 FIFO방식으로 프로그램을 실행하는 방식. 실행 요청 순서에 따라 순차적으로 프로그램을 실행한다. 단점 동시에 여러 프로그램을 실행하지 못한다 다중 사용자 지원이 불가능하다. 응답시간이 높아진다. 이를 보완하기 위해 멀티 시분할 시스템과 멀티프로그래밍이 등장했다. 시분할 시스템 : **다중 사용자 지원, 응답시간 최소화 출처 위의 사진과 같이 여러 프로그램이컴퓨터 자원을 짧은 시간 단위로 사용하는 것을 말한다. 멀티 태스킹 (Multi Tasking) : 동시에 실행하는 것처럼 보이도록 함 출처 단일 CPU에서, 여러 응용 프로그..