목록나무 숲 (789)
나무 숲
* To permit the physical address space of process to be noncontinuous* How?- Divide physical memory into fixed-sized blocks called frames- Divide logical memory into blocks of the same size called pages- To run a program of size n pages, it is needed to find n free frames and load the program- Set up a page table to translate logical to physical addresses- Internal fragmentation 위 그림을 보면 logical..
* Allow systems to enter the deadlock state Single instance of a resource type - Use a wait-for graphMultiple instance of a resource type - Variant of the banker's algorithm * Recovery scheme 1 Wait-for grapha) resource allocation graph b) wait-for graph 위 그림처름 Pi가 Pj가 끝나기를 기다리고 있을 때! ->화살표로 표시한다(b에서 모든 자원이 single instance이므로 cycle이 발생하여 데드락 발생가능성이 생긴다..는 걸 탐지함) 2 Variant of the banker's algorit..
Single instance of a resource type - Use resource-allocation graphMultiple instances of a resource type - Use banker's algorithm 1 Resource-Allocation Graph Scheme- Claim edge Pi->Rj : 프로세스 Pi가 resource Rj에게 자원을 요청하겠다, 고 점선으로 표현 (선언한 것을 나타냄)- 프로세스가 자원을 요청하면 Claim edge는 Request edge로 변신- 자원이 프로세스에게 할당되면 Request edge는 Assignment edge로 변신- 자원이 프로세스로부터 방출되면 Assignment edge는 Claim edge로 변신- 자원은 시스템에서..
High Level Language 프로그램의 연산 특성- Assignment statement가 많다 -> 데이터의 단순한 이동이 많다- 조건문 (if, loop)의 빈번한 사용 ->sequence control High Level Language 프로그램의 operand 특성- 대부분 local scalar 변수(assign과 관련) =>지역 스칼라 변수의 저장과 액세스에 관련된 부분을 우선적으로 최적화해야 함 Procedure Call- depends on 처리하는 파라미터와 nesting의 깊이- 대부분의 변수는 local- Tanenbaum's study* 매 프로시저 호출에서 요구되는 단어의 수가 많지 않으며, 참조의 많은 부분이 지역 스칼라 변수(비교적 적은 수)임을 알 수 있다. ... C..
File Concept- File* Logical storage unit - abstract the physical properties of the storage저장 장치의 물리적 속성 추상화* A file has a certain defined structure, which depends on its type (text, source, object, executable...) -File Attributes* Name 사람이 읽을 수 있는 형태로 유지된 정보* Identifier 파일 시스템 내에서 파일을 구분하는 고유의 태그(숫자)* Type 파일 형식* Location 파일이 존재하는 장치와 그 장치 내의 위치에 대한 포인터* Size 파일의 현재 크기 (byte, block..)* Protectio..
Virtual memory can be implemented via.. demand paging & demand segmentation Demand Paging- Bring a page into memory only when it is needed* Less I/O needed 전체 다 안들여와도 되므로* Less memory needed* Faster response* More users 여러개의 프로그램 동작 가능+) paging이란, physical memory address와 logical memory address사이에서 주소를 변환하는 것 Basic concepts- h/w support is needed to distinguish between the pages that are in memo..
Background- In general, only part of the program needs to be in memory for execution* Codes for handling unusual error condition* Arrays, lists, and tables are often-allocated more memory than they actually need* Certain options and features of a program may be used rarely - Even in those cases where the entire program is needed, it may not all be needed at the same time 순차적 언어이므로 동시에 실행될 가능성 전혀..
Background- important roles of the operating system* to protect the operating system as well as the user processes * Limit register - size of the range* Base register - smallest legal physical memory address base(300040)+limit(120900)=420940 아래 그림을 보면 각 프로세스가 분리된 메모리 공간을 가졌음을 알 수 있다Guaranteed that each process has a separate memory space Address Binding- Address binding of instructions and data ..
Deadlock이란?set of blocked processes- each holding a resource - waiting to acquire a resource held by another process in the set Process 0: Process 1: wait(A); wait(B); wait(B); wait(A); 한 시스템은 2개의 disk drive Process 0,1을 가졌고 각각은 하나의 디스크를 hold 하면서 다른 것을 필요로 한다따라서 둘 다 자원을 이용할 수 없는 상태 System Model- 시스템은 경쟁하는 Process들 사이에 분배되어야 할 유한한 수의 Resource자원(다수의 유형)들로 구성되어 있으며 각각의 유형들은 동등한 다수의 instance로 구성되어 있..