본문 바로가기

728x90
반응형
OS
728x90
반응형
15

가상메모리 가상기억장치 : 주소 매핑, 페이징, 세그먼테이션 가상기억장치: 보조기억장치인 하드디스크의 일부를 주기억장치처럼 사용하는 것 -> 용량이 작은 주기억장치를 마치 큰 용량을 가진 것처럼 사용하는 기법 원리 프로그램을 여러 개의 작은 블록 단위로 나눠서 가상기억장치에 보관해 놓고, 프로그램 실행 시 요구되는 블록만 주기억장치에 불연속적으로 할당하여 처리하는 것 사용목적 주기억장치의 용량보다 큰 프로그램을 실행하기 위해 주기억장치의 이용률과 다중 프로그래밍의 효율을 높이기 위해 단편화 해결 위해 가상기억장치에 저장된 프로그램을 실행하려면? 가상기억장치의 주소를 주기억장치의 주소로 바꾸는 주소변환 작업을 해야 함 주소변환? = 주소 사상, 주소 매핑 가상기억장치에 있는 프로그램이 주기억장치에 적재되어 실행될 때 논리적인 가상주소를 물리적인 실기억주소로 변환하는.. 2020. 8. 28.
운영체제 시스템 종류의 모든 것! 일괄처리/오프라인/다중처리/실시간/임베디드 시스템 etc.. 운영체제 기술 발전의 흐름에 따라 기술한다. 1. 일괄처리 시스템 Batch Processing System - 초기 시스템의 작업 준비 시간 (setup time)을 줄이기 위해 요구사항이 비슷한 여러 개의 작업을 모아서 한꺼번에 처리하는 방식이다. - 온라인처럼 자료가 발생할 때마다 즉각적으로 처리하는 것이 아니라, 입력되는 자료를 일정기간 또는 일정량을 모아두었다가 한꺼번에 처리하는 방식이다. 2. 오프라인 시스템 off-line system - 한 프로그램에서 다음 프로그램으로의 제어가 자동으로 넘어가도록 하는 상주모니터를 사용한 자동 작업 순서화 시스템 - 조작자의 준비시간과 작업순서를 결정하려는 필요성을 제거함으로써 성능을 향상시켰다. - 기계적인 입출력장치의 속도와 전자적 속도와는 차이가 있.. 2020. 8. 28.
커널! 유닉스에서의 커널, 커널 손상 시, 마이크로 커널, 모놀리식 커널 커널의 기본 개념: 프로세스, 파일 관리 + 입출력 장치 관리, 메모리 관리, 시스템 호출 인터페이스... + shell이나 유틸리티, 응용 프로그램들은 시스템 호출로 커널과 통신함 1) 하드웨어 특성으로부터 프로그램을 격리시키고, 2) 하드웨어와 직접적으로 상호작동함으로써 3) 프로그램들에게 일관된 서비스를 제공한다 UNIX 계열의 시스템이 부팅될 때, 가장 먼저 읽혀지는 운영체제의 핵심 부분이기도 한데, 이때 커널은 주기억장치에 상주하게 되며 프로세스 스케줄링, 기억장치 관리, 파일시스템 관리, 운영체제 고유 기능을 제공한다. 커널이 손상되면? 부팅할 때 에러 문자와 함께 블루 스크린이 띄워지며 운영체제를 새로 설치해야 한다. Micro Kernel 가장 기본이 되는 서비스들만을.. 2020. 8. 25.
교착 상태 해결 방법 1. 시스템에 절대 교착 상태가 발생하지 않도록 보장 : 교착 상태 예방, 회피 1.1) 교착 상태 예방 : 교착 상태 필수 조건 4가지 중 하나라도 성립하지 않게끔 보장하여 발생을 예방 - 상호 배제 : 공유 가능한 자원은 배타적인 접근을 요구하지 않으므로 교착 상태가 발생하지 않음 이 조건은 자원의 비공유를 전제로 하는데, 어떤 자원은 본질적으로 공유가 불가능하므로 상호 배제를 거부하여 예방하는 것은 불가능하다. ex) 워드랑 한글에서 한 줄씩 프린터로 출력 불가 - 점유와 대기 : 프로세스가 자원을 요청할 때, 다른 어떤 자원도 갖고 있지 않도록 보장 실행 전에 필요한 모든 자원을 할당받도록 하거나 어떤 자원도 갖고 있지 않을 때만 요청 가능하도록 허용하여 구현 근데 낮은 자원 이용률과 기아 문제가.. 2020. 8. 24.
교착 상태 Deadlock 정의, 필요조건, 유의사항 정상적인 상황일 때, 프로세스는 요청 request -> 사용 use -> 방출 release 의 순서로 자원을 이용한다. 이러한 정상적인 상황을 방해하는 것이 바로 교착 상태! 교착 상태가 되려면 4가지의 필요조건을 모두 충족해야 하고, 이 4가지 조건의 상태가 깨지는 순간이 있으면 안 된다. 상호 배제 Mutual Exclusion 한 번에 한 프로세스만 자원을 사용하는 상태 점유와 대기 Hold and wait 프로세스는 최소 하나의 자원을 점유하는데, 이때 동시에 다른 프로세스에 의해 점유된 자원을 추가로 얻으려고 대기로 들어가는 상태이다. (이미 점유한 자원은 내가 당장 쓸 수 있음과 상관없이 점유한다.. selfish의 전형적인 예,,) 비선점 Non-preemption 자원들을 선점하지 못한.. 2020. 8. 24.