오식랜드
[운영체제] 저장장치 / 인터럽트(interupt) 본문
반응형
RAM
주 메모리
- 휘발성 메모리임 (전원을 끄면 데이터가 사라짐)
- 메인보드에 부착되어있음
- DRAM (Dynamic RAM)
- 불안전함
- 저렴
- 재충전 필요
- 속도가 느림
- 데이터가 일정 시간이 지나면 사라짐
- SRAM (Static RAM)
- 속도가 빠름
- 1bit 짜리 저장소를 연결한 것
- 안정적임
- 비쌈
- 전력이 공급되는 동안 데이터 보관 가능
- 캐시메모리도 SRAM중 하나임
- SDRAM (Synchronous Dynamic RAM)
- DRAM의 종류 중 하나
- 클록틱(펄스)이 발생할 때 마다 데이터를 저장하는 동기식 DRAM
- 클록틱은 메인보드의 클록틱을 말한다 (CPU는 너무 빨라서 못따라감)
보조 메모리
- 비휘발성 메모리
- 플래시 메모리 (반도체)
- 디지털 카메라, MP3, USB와 같이 전력 없이도 데이터 보관이 가능
- SSD
- 가격이 비싸다
- 데이터 접근 속도, 저전력, 높은 내구성이 뛰어남
- 하드디스크를 대신할 정도
ROM
- Read Only Memory : 읽기만 가능하다
- 마스크 롬
- 이미 데이터가 적재되어있어서 새로 쓰거나 지울 수 없음
- PROM (Programmable ROM)
- ROM Writer(전용 기계)를 이용하여 데이터를 한번만 저장할 수 있음
- EPROM (Erasable Programmable ROM)
- 데이터를 여러번 쓰고 지울 수 있음
- 자외선 등을 이용
- EEROM
- 전기 작업으로 데이터를 쓰고 지울 수 있음
- USB,, SSD 등
MEMORY
- 데이터를 쓰고 지울 수 있는 ROM은 수명이 있음
- 메모리 보호를 위해 ‘한계 레지스터’와 ‘경계 레지스터’ 를 사용
- 메모리 보호란, 여러 프로그램의 자원이 섞이지 않게 보호하는 것이다.
메모리 부팅
- 컴퓨터가 켜졌을 때 운영체제를 메모리에 올리는 과정
- 롬이 작업
- 하드웨어 점검
- 메모리에 부트스트랩 로더
- 로더가 운영체제를 실행 (메모리에 로드)
버퍼
- 속도 차이가 있는 두 장치 사이에서 차이를 완화
- 하나의 임시 저장소임
- 저장소라서 용량이 정해져있음
- 일정량의 데이터를 모아 옮김
ex) 렉걸릴 때 키보드를 와다다다 누르면 키보드로 눌렀던 내용이 우다다다 쳐짐
스풀
- CPU와 입출력 장치 사이의 버퍼
- 하나의 버퍼라서 저장공간이 있음
ex) 스풀러 : 10장 프린트하기 실행 → 스풀러로 5장 옮겨짐 → PC를 끔 → 스풀러에 있던 5장은 계속 출력 됨
캐시
- 비싸서 용량이 적음
- CPU와 메모리 사이의 버퍼 (FSB와 BSB의 속도 차이 완화)
- 메모리의 데이터를 미리 가져와 저장해두는 저장소
- 메모리까지 가지 않고 데이터를 찾게 도와준다
- 캐시 히트 : 캐시에서 원하는 데이터를 바로 찾음 (속도가 빠름)
- 캐시 미스 : 원하는 데이터가 캐시에 없어서 메모리에 가서 데이터를 찾음 (캐시에서 해결X, 속도가 느림)
- 캐시 적중률 : 캐시 히트가 되는 비율은 90%~95% 로 굉장히 높은 편
L1 캐시, L2 캐시
- onchip 캐시 (cpu안에 내장된 캐시)
- cpu와 가까울수록 Ln숫자가 작다
- L1 캐시 (특수 캐시) : CPU 레지스터와 연결되어있다. (아예 CPU안에 있기도 하다)
- L2 캐시 (일반 캐시) : 메모리와 연결되어있다
저장장치의 계층구조
- 속도가 빠르고 비싼 저장장치는 CPU와 가깝게,
- 싸고 용량이 큰 저장장치는 멀게
- 구조
- CPU
- 레지스터
- 캐시
- 메모리
- 저장장치 (하드디스크, USB 등)
인터럽트
- 입출력 관리자가 CPU에 보내는 신호
- 입출력 하는 동안에는 CPU가 다른 작업을 할 수 있음
인터럽트 번호
- 인터럽트 리퀘스트
- 주변 장치 중 어떤 것의 작업이 끝났는지를 COU에게 알려주기 위해 사용하는 번호
- I.O. 뿐만 아니라 에러 종류별로 번호가 엄청 많음
인터럽트 벡터
- 여러개의 인터럽트를 하나의 배열로 만든 것
인터럽트 동작 과정
- CPU 가 입출력 관리자에게 입출력 명령
- 입출력 관리자에게 입출력 명령이 넘어가면서 CPU는 다른 일을 수행
- 명령을 받은 입출력 관리자는 명령을 실행
- 입력이 완료되거나 오류가 있으면 CPU에 신호를 보냄 (인터럽트)
반응형
'dev-log > cs' 카테고리의 다른 글
[운영체제] 무어의 법칙 / 암달의 법칙 (0) | 2023.09.27 |
---|---|
[운영체제] 멀티코어 / 멀티스레드 시스템 (0) | 2023.09.27 |
[운영체제] 레지스터 (register) (0) | 2023.09.27 |
[운영체제] 버스 (bus) (0) | 2023.09.27 |
[운영체제] 현재의 운영체제들 (0) | 2023.09.27 |
Comments