Programbunch of instructions and static data in the disk ProcessA running programMachine stateMemory : instructions and dataRegisters : program counte
scheduling policy 에 따라 process 가 state를 왔다갔다하며 잘 진행되면 좋은데 가끔 OS가 간섭을 해야 할 때가 있다. 언제 어떻게 하는 지 알아보자.아래와 같은 순서로 진행된다. Without "limits" on running progra
Each job runs for the same amount of timeAll jobs arrive at the same timesOnce started, each job runs to completionAll jobs only uses the CPU (i.e no
Turnaround time$$T{turnaround} = T{completion} - T\_{arrival}$$OS generally doesn't know how long a job will run forSJF and STCF assume that the run-t
Multi-Level Feedback QueueRule 1 : If Priority(A) > Priority(B), A runs (B doesn't)Rule 2 : If Priority(A) = Priority(B), A & B in RRRule 3 : When a j
Didn't provide much of an abstractionThere would be one running program that currently sat in physical memory추상화가 구현을 안했어서 그냥 메모리공간에 하나의 프로세스를 위한 공간이었
Address spaceillision that the program has its own private memory, where its own code and data resideAddress TranslationChanging the virtual address t
Segmentation큰 address space는 처리하기가 힘듦기 때문에 공간을 segment(code, heap, stack)로 나누게 되었고 메모리 관리를 효율적으로 하게 되었다.00 code, 01 heap, 11 stackAddress translation변
Pagingsegmentation 은 길이가 가변적이다.고정된 크기로 짜르고 mapping 4KBView physical memory as an array of fixed-sized slots called page framesPage tablePer-process da
SegmentationVariable - sized memory piecesPagingView physical memory as an array of fixed-sized slots called page framesPage tableTLBAddress-translati
ExampleOS brings the page into memory when it is accessedOn demendPage faultIf a page is invalid (and not present)PerfetchingE.g., if a code page P is