1 minute read

CPU 와 메모리

- CPU 의 구성과 동작
    - CPU 의 기본 구성
        - ALU
        - 제어 유니트
        - 레지스터 세트
    - CPU 의 명령어 처리 과정
    - 레지스터의 종류
        - 사용자 가시 레지스터

            사용자가 변경할 수 있는 레지스터

            데이터 레지스터와 주소 레지스터가 있음

            - 데이터 레지스터

                메모리의 데이터를 저장하는 레지스터

            - 주소 레지스터

                메모리의 주소를 저장하는 레지스터

        - 사용자 불가시 레지스터

            사용자가 변경할 수 없는 레지스터

            - 프로그램 카운터(PC)
            - 명령어 레지스터(IR)
            - 메모리 주소 레지스터(MAR)
            - 메모리 버퍼 레지트서(MBR)
    - 버스의 종류
        - 제어 버스
        - 주소 버스
        - 데이터 버스
        - 버스의 대역폭
- 메모리의 종류와 부팅
    - 메모리의 종류
        - 휘발성 메모리
        - 비휘발성 메모리
    - 메모리 보호

        CPU 는 현재 진행 중인 작업의 메모리 시작 주소를 경계 레지스터, 마지막 주소 까지의 차이를 한계 레지스터에 저장함

        작업 진행되는 동안 주소 범위 벗어나는지 하드웨어적으로 점검함으로써 메모리 보호

        현대 운영체제는 시분할 기법을 사용하여 여러 프로그램을 동시에 실행하므로 사용자 영역이 여러 개의 작업 공간으로 나뉘어져 있어서 메모리 보호 중요함

        CPU 는 해당 작업이 주소값 안에서 이루어지는지 검사하다가 값 벗어날 시 메모리 와류와 관련된 인터럽트로 운영체제를 깨워 인터럽트를 처리하도록 시킴

        메모리 영역 벗어나서 발생한 인터럽트는 운영체제가 해당 프로그램 강제 종료

        일괄 작업 시스템에서는 메모리가 운영체제 영역과 사용자 영역으로 구분되어서 막음

    - 부팅

        컴퓨터를 켰을 때 운영체제를 메모리에 올려서 실행시키는 것

        롬에 저장된 바이오스가 실행되고 주요 하드웨어 작동 검사

        이상 없을 시 하드디스크의 마스터 부트 레코드에 저장된 부트스트랩 코드를 메모리에 올려서 실행시킴

        부트스트랩 코드가 운영체제 프로세스 실행

        - 마스터 부트 레코드

            하드디스크의 첫 번째 섹터를 가리킴

            운영체제를 실행하기 위한 코드인 부트스트랩이 저장되어 있음

        - 운영체제의 저장 위치 변화

            ROM 에 저장되다가 플로피 디스크, 디스캣, 저장장치로 옮겨감