일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Stack
- googleapiclient
- programmers
- 국민대
- 머신 러닝
- python3
- 운영체제
- 회귀
- Seq2Seq
- C++
- db
- 국민대학교
- OS
- Heap
- 프로그래머스
- Python
- gan
- 데이터베이스
- 재귀
- LSTM
- SQL
- 스택
- machine learning
- PANDAS
- Regression
- GIT
- 정렬
- 파이썬
- kmu
- instaloader
- Today
- Total
목록OS (4)
정리 노트
운영 체제의 scheduling 정책들을 알아보기 전에 프로세스에 대해 다음과 같이 가정합시다. 모든 프로세스가 CPU를 사용하는 시간이 똑같다. 모든 프로세스가 동시에 도착한다. 한 번 시작한 프로세스는 끝날 때까지 CPU를 사용한다. 프로세스는 I/O 요청 등 없이 CPU만 쓴다. 프로세스가 끝날 시간을 알고 있다. 현실에서는 절대 있을 수 없는 가정들이지만 정책들을 살펴보기 위해 일단 이렇게 가정하고 시작합시다. 그리고 2가지의 측정 기준을 정의합니다. Turnaround Time: 반환 시간(끝난 시간 - 도착 시간) Response Time: 응답 시간(스케줄링된 시간 - 도착 시간) 1. FIFO(First In First Out) 가장 기본적이고 쉽게 구현할 수 있는 정책입니다. 정책을 살펴..
이 포스트는 국민대학교 소프트웨어학부 '운영체제' 강의를 듣고 요약하는 포스트입니다. 원하시는 정보가 없을 수도 있습니다. 이 점 유의 바랍니다. 오류 지적은 매우 환영합니다! OS가 CPU 자원을 프로세스에 할당하는 방법으로 타이머를 사용합니다. 타이머도 일종의 장치이므로 CPU에게 interrupt를 걸 수 있고, 똑같이 trap handler로 진입합니다. Trap handler는 현재 진행 중인 프로세스를 중단하고 다른 프로세스로 바꿉니다. 이러한 동작을 context switch라고 합니다. 출처: https://pages.cs.wisc.edu/~remzi/OSTEP/cpu-mechanisms.pdf, 8쪽 A timer device can be programmed to raise an inte..
이 포스트는 국민대학교 소프트웨어학부 '운영체제' 강의를 듣고 요약하는 포스트입니다. 원하시는 정보가 없을 수도 있습니다. 이 점 유의 바랍니다. 오류 지적은 매우 환영합니다! 프로세스의 정의 프로세스는 쉽게 말해 실행되고 있는 프로그램입니다. 출처: https://pages.cs.wisc.edu/~remzi/OSTEP/cpu-intro.pdf, 1페이지 The definition of a process, informally, is quite simple: it is a running program. 예를 들어 지금 이 블로그를 보고 있는 인터넷 브라우저도 프로세스, 게임도 프로세스, 음악을 재생하고 있는 프로그램도 프로세스입니다. 저희는 여러 프로그램들을 동시에 켜놓고 컴퓨터를 하고 있을 때가 많습니다..
이 포스트는 국민대학교 소프트웨어학부 '운영체제' 강의를 듣고 요약하는 포스트입니다. 원하시는 정보가 없을 수도 있습니다. 이 점 유의 바랍니다. 오류 지적은 매우 환영합니다! 이번 포스트에서는 운영 체제를 공부한다면 기본적으로 알아야 할 3가지에 대해 소개하는 느낌으로 적었습니다. 1. 가상화(Virtualizing) 1-1. CPU 가상화(Virtualizing CPU) 아래에 C 언어로 작성한 간단한 코드가 있습니다. // Source: https://github.com/remzi-arpacidusseau/ostep-code/blob/master/intro/cpu.c #include #include #include "common.h" int main(int argc, char *argv[]) { i..