https://github.com/SUSC-KR/Hanbit-CS101.git
컴퓨터 용어는 되도록이면 영어로 정리하고 공부한다, !!
페이지 교체 알고리즘이 왜 필요할까 : 전체 메모리가 한정적인데 써야할게 많으면 그때마다 교체해주는거
-> 우리가 페이지 교체 알고리즘을 사용하게 된 이유가 한정되어있는 자원(메모리)를 가지고 여러개의 프로그램을, 4기가 이상의 프로그램을 실행시키기 위해서 사용
-> 프로그램이 4기가라고 해서 실행시킬 때 4기가를 다 사용하는게 아님, 모든 코드를 RAM에 올릴 필요가 없다 , 그래서 자주 사용하는 코드를 올리는게 페이지 교체 알고리즘을 사용하는 거
FIFO 단점 : 페이지 부재 횟수가 늘어나서 성능이 떨어진다 / 페이지 사용 빈도를 파악하지 못함
LRU, LFU : 페이지 사용 빈도 수를 파악할 수 있는데 그걸 위한 메모리 공간을 추가로 더 써야한다는 문제
프로세스 스케줄링 기법 :
response time 응답시간
1. FIFO
2. SJF
3. 라운드로빈
4. 우선순위
-> 기준
주기억장치에 있는 큐 종류 5가지 찾기
실행큐 대기큐 준비큐 ..
큐에는 job queue, ready queue, device queue,waiting queue가 있다.
보조기억장치에 있는 프로그램의 일부분들을 필요할 때만 주기억장치에 적재하면서 실행하는 방식을 가상 메모리 이라 하며 메모리가 실제 메모리보다 많아 보이게 하는 기술이다.
-> 왜 많아보이게..?
페이징 방식을 통해 외부 단편화를 해결할 수 있지만 내부 단편화는 존재한다
-> 페이징 방식은 (물리)메모리를 같은 크기로 나누는건데, 이러면 외부단편화는 해결이 되는데 내부단편화는 페이지 수를 작게하면 해결이 되긴 하는데 페이지 수가 많아져서 공간적으로 효율이 떨어지기 때문에
결국에는 외부단편화는 해결이 되고, 내부단편화는 해결하기 힘들다.
하드웨어 = 컴퓨터 자원 (CPU, 메모리, 네트워크, 입출력장치 등등)
운영체제는 하드웨어를 편리하게 사용할 수 있게 한다
가상화 는 하드웨어를 사용하는데에 있어서 큰 이점을 준다
입출력장치도 종류가 많자나 그런것들을 가상화 해서 운영체제가 인풋아웃풋으로 정리를 해주면 사용자 입장에서 훨씬 편하다
사용자는 명령어만 입력하면 알아서 운영체제가 메모리할당이랑 페이지교체를 다 해줌
다음주는 자료구조/알고리즘 까지 해오기 !