자아, CPU의 구조는 대략 이렇다.하드디스크에 있던 '프로그램'이 메모리에 적재되면, '프로세스'가 되고, 실행된다!
main memory에 어떻게 process를 저장할 수 있을까? 아니 어떻게 '효율적으로' 저장할 수 있을까? 🧐 메모리 할당에는 여러 방법이 있다. 어떤 것을 사용하는 것이 좋을지 고민해부자! 1. Contiguous Allcation 우선, 연속적으로 할당하
어디 한 번 비연속적으로 할당을 해보자! 먼저 우리가 생각하는 process는 연속적으로 생겼다. PCB를 떠올려보면..끄덕. 그런데 이걸 효율적으로 저장하기 위해서는 비연속적으로
Program이 실행되려면 메모리에 올라와야 한다. 하지만, 일부만 사용된다.그러니까 다 안 올려도 된다.physical 메모리로부터 사용자가 보는 logical(virtual, 가상) memory를 분리하자!큰 크기의 가상 메모리는 작은 physical memory를
free frame이 없을 때, page replacement가 일어나야 한다.stepssecondary storage에서 page 찾는다.main memory에서 free frame을 찾는다. 있으면 사용하고 없으면 page replace algorithm을 통해 s
Allocation of Frames Frame Allocation Algorithm Global vs. Local Replacement Thrashing Locality of a Process Execution
application은 process address space에 데이터를 저장할 수 있다.virtual address space는 한정된 크기를 갖고 있다.power 나가면 / program 종료하면 없어질 수도 있다.여러 process가 같은 데이터에 대해 접근하고
디스크는 여러 partition으로 나누어질 수 있다. 또는 여러 디스크를 하나로 확장할 수 있다.각 partition은raw : NO file system, 포맷되지 않았음, data access 빨리 하려고 사용하기도 함cooked : file system포맷 =
빈 블록의 linked list로 관리비효율적연속적인 공간을 얻을 수 없다.하지만 공간 낭비는 없음더 많이 사용bit map/ bit vector로 구현각 블록은 1 bit로 표현된다. free : 1 / allocated : 0어떤 게 비어 있는지 찾기 빠르다.cal