본문 바로가기

CS/오퍼레이팅 시스템

(19)
3. 스토리지 구조 Storage Structure * 스토리지 구조 - 메인 메모리 : cpu가 직접 접근하는 유일한 스토리지 e.g. DRAM - secondary storage : 비휘발성, 메인메모리 확장 e.g. SSD, 마그네틱 디스크 - 백업 스토리지 - 전형적으로 계층 구조를 가지며 속도, 가격, 휘발성을 기준으로 분류 - 최상위는 레지스터, 최하위는 테이프 - 서로 다른 스토리지는 서로다른 가격과 tradeoff를 가짐 - tradeoff를 잘 관리하는 것이 cpu를 효과적으로 사용할 수 있게 함 (캐싱이 컴퓨터 시스템의 중요한 원리) * 스토리지 접근 (캐싱) - 빠른 스토리지 체크 : 프로그램에서 원하는 데이터가 빠른 스토리지에 있으면 빠르게 접근 가능 그러지 못하면 성능이 저하됨 - 어떤 데이터를 빠른 스토리지에 저장할 지 결정하는 ..
2. 인터럽트 * 인터럽트 - 인터럽트 벡터 : 인터럽트 서비스 루틴 주소를 담고 있는 테이블 - 인터럽트 서비스 루틴 : = 핸들러, 인터럽트 발생 시 무조건 수행해야 하는 것 - 인터럽트 발생 시 인터럽트 서비스 루틴 수행을 위해 인터럽트 벡터에서 핸들러 주소를 찾음 - 인터럽트 서비스루틴 수행 전에 기존 수행중이던 프로세스의 주소를 저장하고 핸들러를 수행함 - time interrupt : timer 디바이스에서 주기적으로 발생하는 인터럽트 * interrupt driven IO 3. io 트렌잭션 수행 -> cpu는 그 동안 다른 일을 하고 있음 4. 인터럽트 -> 핸드러를 수행. 이때 멈춘 수행 주소를 저장 *program counter register 1. 원래 cpu에서 처리 중인 프로세스는 100번지를 ..
1. 오퍼레이팅 시스템 * 정의 : 매우 다양한 형태로 개발되어 명확히 정의하기 어려웅 - 오퍼레이팅 시스템의 역할을 분석해서 정의할 수 있음 - 오퍼레이팅 시스템의 주된 역할 : 하드웨어 관리, 프로그램 수행 관리 - 하드웨어 : 입출력장치, 메인메모리, 스토리지, cpu / 하드웨어 관리 : 입출력장치 접근, 파일 접근, accounting, 오류 탐지 - 프로그램 수행 : 스케줄링과 오류 보고 - 사용자는 어플리케이션을 통해 하드웨어에 접근 - 어플리케이션 프로그램과 하드웨어 사이에 위치하여 사용자가 하드웨어로 접근하기 쉽도록 함 * 운영체제의 목적 - 문제를 더 쉽게해결하기 위해서 - 컴퓨터가 더 쓰기 쉬워지게 되려고 - 하드웨어를 더 효율적으로 사용하기 위해서 * 운영체제의 정의 1. 하드웨어를 효과적이고 공평하게 할..