ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [OS] 컴퓨터 시스템의 동작 원리
    OS 2021. 7. 17. 16:44

     

    컴퓨터 시스템의 동작 원리


     

     

    컴퓨터 시스템 구조


    컴퓨터 시스템 구조 요약

     

     

    1. CPU

    중앙처리장치라 불리는 CPU는 인간의 두뇌와 같은 역할을 합니다. 중앙처리장치(central processing unit) 라는 말 그대로 중앙에서 사용자가 입력한 명령어를 해석하고 연산한 후 그 결과를 알려준다.

     

     

    2. 메모리

    랜덤 액세스 메모리(Random Access Memory) 즉, 램(RAM)은 임의의 영역에 접근하여 읽고 쓰기가 가능한 주기억 장치다. RAM은 어느 위치에 저장된 데이터든지 접근(읽기 및 쓰기)하는 데 동일한 시간이 걸리는 메모리이기에 ‘랜덤(Random, 무작위)’이라는 명칭이 주어진다.

     

     

    3. Device Controller

    • I/O device controller
      • 해당 I/O 장치 유형을 관리하는 일종의 작은 CPU
      • 제어 정보를 위해 control register, status register가 있다.
      • local buffer를 갖는다 (=일종의 data register)
    • I/O는 실제 device와 local buffer 사이에서 일어남
    • Device controller는 I/O가 끝났을 경우 interrupt로 CPU에 그 사실을 알림

    device driver(장치구동기)os 코드 중 각 장치별 처리루틴 -> software
    device controller(장치제어기)각 장치를 통제하는 일종의 작은 cpu -> hardware

     

     

    4. Interrupt line

    CPU로 인터럽트 신호를 보낼 수 있는 하드웨어 라인

     

     

    5. Mode bit

    사용자 프로그램의 잘못된 수행으로 다른 프로그램 및 운영체제에 피해가 가지 않도록 하기 위한 보호장치가 필요 Mode bit을 통해 하드웨어적으로 두 가지 모드의 operation 지원

    1 사용자 모드 : 사용자 프로그램 수행
    0 모니터 모드 : OS 코드 수행 (= 커널 모드, 시스템 모드)

     

     

    • 보안을 해칠 수 있는 중요한 명령어는 모니터 모드에서만 수행 가능한 ‘특권명령’ 으로 규정
    • Interrupt나 Exception 발생시 하드웨어가 mode bit을 0으로 변경
    • 사용자 프로그램에게 CPU를 넘기기 전에 mode bit을 1로 변경

     

    6. Timer

    • 정해진 시간이 흐른 뒤 운영체제에게 제어권이 넘어가도록 인터럽트를 발생
    • 타이머는 매 클럭 틱 때마다 1씩 감소
    • 타이머 값이 -(마이너스)가 되면 타이머 인터럽트 발생
    • CPU를 특정 프로그램이 독점하는 것으로부터 보호

    타이머는 time sharing을 구현하기 위해 널리 이용며 현재 시간을 계산하기 위해서도 사용합니다.

     

     

    7. DMA Controller

    메모리에 접근할 수 있는 장치는 CPU가 유일하다. 메모리는 CPU의 작업 공간이다. I/O장치나 다른 장치들이 접근 할 수 없다. 그렇다보니 1ms 마다 인터럽트가 발생한다면 CPU는 계속해서 자잘한 인터럽트를 처리해야하는 문제가 생긴다. 때문에 이를 해결하기 위해 메모리에 접근 할 수 있도록 도와주는 장치가 DMA 컨트롤러이다.

    • 빠른 입출력 장치를 메모리에 가까운 속도로 처리하기 위해 사용
    • CPU의 중재 없이 device controller가 device의 buffer storage의 내용을 메모리에 block 단위로 직접 전송
    • 바이트 단위가 아니라 block 단위로 인터럽트를 발생시킴

     

    8. PC(Program counter)

    CPU의 레지스터중 하나. pc는 다음번에 실행할 명령어의 주소를 가지고 있다. 하나의 기계어가 종료 이후의 다음 위치를 가리킨다.

     

     

     

     

     

     

    References


    • 운영체제와 정보기술의 원리

     

     


    잘못된 코드나 내용이 있다면 댓글을 남겨주세요. 즉시 수정하도록 하겠습니다! :)

     

    댓글