메모리
메모리의 종류
램
휘발성 메모리
DRAM: 저장된 0과 1의 데이터가 일정 시간이 지나면 사라진다. 따라서 일정 시간마다 다시 재생시켜야 한다. 주로 메인 메모리에 사용.
SRAM: 전력이 공급되는 동안에는 데이터를 보관할 수 있다. 캐시 같은 고속 메모리에 사용.
SDRAM: DRAM의 발전 형태로 클록틱(펄스)이 발생할 때마다 데이터를 저장하는 동기 DRAM이다.
비휘발성 메모리
플래시 메모리
전력이 없어도 데이터를 보관하는 저장 장치로 많이 쓰인다.
메모리의 각 소자는 최대 사용횟수가 제한되어 보통 소자 하나당 몇 천번에서 만 번 정도 사용하면 제 기능을 잃는다.
FRAM, PRAM, SSD 등
롬
전력이 끊겨도 데이터를 보관할 수 있다. 단 데이터를 한 번 저장하면 바꿀 수 없다.
마스크 롬: 데이터를 지우거나 쓸 수 없음
PROM: 데이터를 한 번만 저장할 수 있음
EPROM: 데이터를 여러 번 쓰고 지울 수 있음
메모리 보호
일괄 작업 시스템에서는 메모리가 운영체제 영역과 사용자 영역으로 구분된다. 일괄 작업 시스템에서 메모리 보호는 사용자 영역의 작업이 운영체제 영역으로 침범하지 못하도록 막는 것.
CPU는 현재 진행 중인 작업의 메모리 시작 주소를 경계 레지스터에 저장한 후 작업을 한다. 또한 현재 진행 중인 작업이 차지하고 있는 메모리의 크기, 즉 마지막 주소까지의 차이를 한계 레지스터에 저장한다.
사용자의 작업이 진행되는 동안 이 두 레지스터의 주소 범위를 벗어나는 지 하드웨어적으로 점검함으로써 메모리를 보호한다. 이를 벗어나면 메모리 오류와 관련된 인터럽트가 발생하여 모든 작업이 중단되고 CPU는 운영체제를 깨워서 인터럽트를 처리하도록 시킨다.
메모리 영역을 벗어나서 발생한 인터럽트의 경우 운영체제가 해당 프로그램을 강제 종료시킨다.
부팅
컴퓨터를 켰을 때 운영체제를 메모리에 올리는 과정.
부팅 과정
사용자가 컴퓨터의 전원을 켜면 롬에 저장된 바이오스(BIOS)가 실행되고, 이 바이오스가 CPU, 메모리, 하드디스크, 키보드, 마우스와 같은 주요 하드웨어가 제대로 작동하는 지 확인한다.
이상이 있다면 삐 소리와 함께 오류 메세지를 출력한다.
이상이 없으면 하드 디스크의 마스터 부트 레코드(MBR)에 저장된 작은 프로그램을 메모리로 가져와 실행한다.
마스터 부트 레코드는 하드디스크의 첫 번째 섹터를 가리키며, 운영체제를 실행하기 위한 부트스트랩 코드가 여기에 저장되어 있다.
부트스트랩 코드는 운영체제를 메모리로 가져와 실행하는 역할을 하는 작은 프로그램이다.
마스터 부트 레코드에 있는 부트스트랩이 메모리에 올라오면 하드 디스크에 저장된 운영체제를 메모리로 불러온다.
마스터 부트 레코드가 손상되면 운영체제를 실행할 수 없다.
한 개의 컴퓨터에 여러 개의 운영체제를 설치했다면 어떤 운영체제로 사용할 것인지를 물어보는 화면이 나오는데, 이 화면이 부트스트랩 코드가 실행된 화면이다.,
단일 운영체제만 있다면 이러한 과정 없이 바로 운영체제를 메모리에 올린다.
Last updated