운영체제 - 컴퓨터 구조

.·2021년 4월 24일
0
post-thumbnail
post-custom-banner

운영체제 (Operating System) 정의

OS 는 하드웨어를 효율적으로 관리해서 응용프로그램 또는 사용자에게 서비스를 제공하는 소프트웨어를 OS, 운영체제(Operation System)라고 한다.

컴퓨터 하드웨어

컴퓨터 하드웨어를 크게 3가지로 나눠볼 수 있다.

  • 프로세서(Processor) : 계산하는 장치
  • 메모리(Memory) : 저장하는 장치
  • 주변장치 : 그 외에 장치

프로세서

  • CPU
  • GPU (그래픽카드)
  • 응용 전용 처리 장치 : 특별한 계산을 위해 탄생한 장치들

메모리

  • 주기억장치
  • 보조기억장치

주변 장치

  • 키보드/마우스 : 입력 장치
  • 모니터, 프린터 : 출력 장치
  • 네트워크 모뎀 : 네트워크

각 주요 하드웨어를 자세한 설명

프로세서 (Processor) :

컴퓨터의 두뇌 (중앙처리장치)

  • 연산 수행
  • 컴퓨터의 모든 장치 동작 제어

레지스터(Register) : 프로세스 내부에 있는 메모리

  • 프로세서가 사용할 데이터 저장
  • 컴퓨터에서 가장 빠른 메모리

레지스터의 분류

  • 용도에 따른 분류 : 전용 레지스터, 번용 레지스터
  • 사용자가 정보 변경 가능 여부에 따른 분류 : 사용자 가시 레지스터, 사용자 불가시 레지스터
  • 저장하는 정보의 종류에 따른 분류 : 데이터 레지스터, 주소 레지스터, 상태 레지스터

사용자 가시 레지스터

데이터 레지스터 DR (Data Register) : 함수 연산에 필요한 데이터를 저장
주소 레지스터 AR(Address Register) : 주소나 유효 주소를 계산하는데 필요한 주소의 일 부분을 저장

사용자 불가시 레지스터

  • 프로그램 카운터 PC (Program Counter) : 다음에 실행할 명령어의 주소를 보관하는 레지스터
  • 명령어 레지스터 IR (Instruction Register) : 현재 실행하는 명령어를 보관하는 레지스터
  • 누산기 ACC (ACCumlator) : 데이터를 일시적으로 저장하는 레지스터
  • 메모리 주소 레지스터 MAR (Memory Address Register) : 프로세서가 참조하려는 데이터의 주소를 명시하여 메모리에 접근하는 버퍼 레지스터
  • 메모리 버퍼 레지스터 MBR (Memmory Address Register) : 프로세서가 메모리에서 읽거나 메모리에 저장할 데이터 자체를 보관하는 버퍼 레지스터. 메모리 레지스터라고도 한다.

운영체제와 프로세서의 관계

  • 프로세서에게 처리할 작업 할당 및 관리
    • 프로세스(Process) 생성 및 관리
  • 프로그램의 프로세서 사용 제어
    • 프로그램의 프로세서 사용 시간 관리
    • 복수 프로그램 간 사용 시간 조율

메모리 (Memory) :

데이터를 저장하는 장치 ( 기억 장치 )

주기억장치 (Main Memory)

  • 프로세서가 수행할 프로그램과 데이터 저장
  • DRAM을 주로 사용 ( 용량이 크고, 가격이 저렴 )
  • 디스크 입출력 병목현상(I/O bottleneck) 해소

프로세서는 디스크에서 메인 메모리로 온 데이터를 가져다 사용한다.

하지만 왜 디스크에서 바로 데이터를 가져다 쓰지 않을까?
왜냐하면 디스크 장치는 용량은 크지만, 속도는 엄청 느리기 때문이다.
그래서 디스크와 프로세서를 연결해주는 장치를 메인 메모리라고 생각하면 된다.

또 왜 메인 메모리를 디스크로 사용하지 않지?
왜냐하면 속도는 빠르지만 용량이 작고 가격도 비싸기 때문이다.

캐시 (Cache)

  • 프로세서 내부에 있는 메모리 (L1, L2 캐시 등)
  • 메인 메모리의 입출력 병목현상 해소

디스크와 주 기억장치와 마찬가지로 주 메모리와 프로세서 간의 속도 차이가 크다.
이를 개선하기 위해 캐시는 프로세서와 메모리의 사이에서 중간 역할을 한다.


보조기억 장치 (Auxiliary memory / secondary memory / storage) :

  • 프로그램과 데이터를 저장
  • 프로세서가 직접 접근할 수 없음 ( 주변 장치로 분류 )
    • 주 기억장치를 거쳐서 접근
    • 프로그램 또는 데이터가 주 기억장치보다 큰 경우는 가상 메모리(Virtual memory)라고한다. 가상메모리는 하드디스크의 일부를 주 기억장치처럼 사용하는 것이다.
  • 용량이 크고, 가격이 저렴
  • 하드디스크, USB, CD, SD카드 등

메모리와 운영체제 관계

  • 메모리 할당 및 관리
    • 프로그램의 요청에 따른 메모리 할당 및 회수
    • 할당된 메모리 관리
  • 가상 메모리 관리
    • 가상 메모리 생성 및 관리
    • 논리 주소 -> 물리 주소 변환

시스템 버스 (System Bus) :

하드웨어들이 데이터 및 신호를 주고 받는 물리적인 통로

  • 데이터 버스 : 프로세서와 메인 메모리, 주변장치 사이에서 데이터를 전송
  • 주소 버스 : 프로세서가 시스템의 구성 요소를 식별하는 주소 정보를 전송
  • 제어 버스 : 프로세서가 시스템의 구성 요소를 제어하는 데 사용

동작 원리


주변 장치 :

프로세서와 메모리를 제외한 하드웨어들

  • 입력장치 : 마우스, 키보드 등
  • 출력장치 : 모니터, 프린트, 오디오 등
  • 저장장치 : 디스크, usb, cd 등

주변장치와 운영체제 관계

  • 장치 드라이버 관리 : 주변 장치 사용을 위한 인터페이스 제공
  • 인터럽트(Interrupt) 처리 : 주변 장치의 요청 처리
  • 파일 및 디스크 관리 : 파일 생성 및 삭제, 디스크 공간 관리
profile
.
post-custom-banner

0개의 댓글