본문 바로가기

IT개념/운영체제

[운영체제] 1-1. 컴퓨터 시스템과 운영체제 개요 1

728x90

컴퓨터 시스템

컴퓨터 시스템의 개념적 구성

  • 하드웨어 + 소프트웨어
  • 펌웨어

컴퓨터 시스템의 4대기능

  1. 입력 (키보드)
  2. 처리 (CPU)
  3. 저장,보관 (디스크)
  4. 출력 (모니터)

컴퓨터의 구성

구분 내용
필수장치 중앙처리장치,메인 메모리
주변장치 입력장치, 출력장치, 저장장치

CPU와 메모리

  • CPU: 명령어를 해석해 실행하는 장치, 두뇌에 해당
  • 메모리: 작업에 필요한프로그램과 데이터를 저장하는 장소, 바이트 단위로 분할되어 분할 공간마다 주소로 구분

입, 출력 장치

  • 입력장치: 외부의 데이터를 컴퓨터에 입력하는 장치
  • 출력장치: 컴퓨터에서 처리한 결과를 사용자가 원하는 형태로 출력하는 장치

클록(clock)

  • CPU 속도와 관련된 단위
  • 클록이 일정 간격으로 틱(tick)을 만들면, 이에 맞추어 CPU안의 모든 구성 부품이 작업함
  • 틱은 펄스(pulse) 또는 클록 틱(clock tick)으로 부름

헤르츠(Hz)

  • 클록틱이 발생하는 속도를 나타내는 단위
  • 1초에 클록틱이 한 번이면 1Hz, 1초에 1,000번이면 1kHz(1,000Hz)
  • 3.4GHz는 1초에 3,400,000,000(3.4*109)번 발생하며 CPU가 약 1초에 34억번 연산할 수 있음을 의미

비트, 바이트, 워드

  • 비트: 정보를 구성하는 최소 단위
  • 바이트: 정보 표현의 기본 단위
  • 워드: 중앙처리장치에서 한 번에 처리할 수 있는 비트의 집합
  • 입력되는 워드 단위 정보를 명령어로 해석
  • 연산장치는 수치와 같은 데이터로 취급


컴퓨터 하드웨어

중앙처리장치(CPU)

  • 컴퓨터 시스템의 모든 장치 동작을 제어, 명령 실행
  • 마이크로프로세서는 CPU를 직접회로 형태로 만든 물리적 구성 요소
  • CPU와 마이크로프로세서를 일반적으로 구분 없이 사용
  • 제어장치+연산장치+레지스터+CPU 내부버스
  • 산술논리 연산장치: 데이터의 사칙연산, 논리연산을 수행
  • 제어장치: CPU에서 작업을 지시
  • 레지스터: CPU에서 데이터를 임시로 보관

CPU의 내부 버스

구분 특징
제어 버스 제어 장치와 연결된 버스로 CPU가 메모리와 주변장치에 제어 신호를 보내기 위해 사용
메모리와 주변 장치에서도 작업이 완료되거나 오류가 발생하면 제어 신호를 보내기 때문에 양방향
주소 버스 메모리 주소, 레지스터와 연결된 버스로 메모리나 주변장치에 데이터를 읽거나 쓸 때 위치 정보를 보내기 위해 사용함, 단방향
데이터 버스 메모리 버퍼 레지스터와 연결된 버스로, 데이터의 이동이 양방향으로 이루어짐

메인보드

  • CPU와 메모리 등 다양한 부품을 연결하는 커다란 판
  • 다양한 장치들을 버스로 연결
  • 버스는 데이터가 지나다니는 통로
  • 그래픽,사운드,랜이 기본으로 있기도 하고 성능을 위해 따로 장착하기도 함

메모리의 종류

  • 휘발성
  • DRAM
  • SRAM
  • SDRAM
  • 비휘발성
  • 플래시 메모리
  • FRAM
  • PRAM

롬(비휘발성)

  • 마스크 롬
  • PROM
  • EPROM

휘발성 메모리

  • DRAM: 저장된 0과 1 데이터가 시간이 지나면 사라지므로 일정 시간마다 재생시켜야 함
  • SRAM: 전력이 공급되는 동안 데이터 보관 가능하여 재생 X
  • SDRAM: 펄스가 발견할 때마다 데이터를 저장하는 동기 DRAM

비휘발성 메모리

  • 플래시 메모리: 디지털 카메라, MP3 플레이어, USB 드라이버와 같이 전력이 없어도 데이터를 보관하는 저장장치
  • SSD: 가격이 비싸지만 빠른 데이터 접근 속도, 저전력, 내구성 때문에 많이 사용함

메모리 보호의 필요성

  • 현대 운영체제는 시분할 기법을 사용하여 여러 프로그램을 동시에 실행해 사용자 영역이 여러 작업 공간으로 나뉘어 있음
  • 메모리가 보호되지 않으면 어떤 작업이 다른 작업의 영역을 침범해 프로그램을 파괴하거나 데이터를 지울 수도 있음
  • 최악의 경우 운영체제 영역을 침범하면 시스템이 멈출 수도 있음

메모리 보호 방법

  1. 작업의 메모리 시작 주소를 경계 레지스터에 저장 후 작업
  2. 작업이 차지하고 있는 메모리의 크기, 마지막 주소까지의 차이를 한계 레지스터에 저장
  3. 작업이 진행되는 동안 두 레지스터의 주소 범위를 벗어나는지 하드웨어적으로 점검
  4. 두 레지스터 값을 벗어나면 메모리 오류 인터럽트 발생
  5. 메모리 영역을 벗어나서 발생한 인터럽트인 경우 운영체제가 프로그램을 강제 종료

버퍼

  • 속도에 차이가 있는 두 장치 사이에 그 차이를 완화하는 역할을 하느 장치
  • 일정량의 데이터를 모아 옮김으로서 속도 차이를 완화시킴

스풀

  • CPU와 입출력장치가 독립적으로 동작하도록 고안된 소프트웨어적인 버퍼
  • 예) 스풀러
    • 인쇄할 내용을 순차적으로 출력하는 소프트웨어로 출력 명령을 내린 프로그램과 독립적으로 동작
  • 인쇄물이 완료될 때 까지 다른 인쇄물이 끼어들 수 없으므로 프로그램 간 배타적임

캐시

  • 메모리와 CPU간 속도 차이를 완화하기 위해 메모리의 데이터를 미리 가져와 임시저장해놓음
  • 필요한 데이터를 모아 한꺼번에 전달하는 일종의 버퍼로 CPU가 앞으로 사용할거 같은 데이터를 미리 가져다 놓음
  • CPU는 메모리에 접근해야할 때 캐시를 먼저 방문하여 원하는 데이터가 있는지 찾아봄

폰노이만 구조

  • CPU, 메모리, 입출력장치, 저장장치가 버스로 연결된 구조

기억장치

저용량 → 고용량, 고속도 → 저속도

  1. 레지스터
  2. 캐시(SRAM)
  3. 메인메모리(DRAM)
  4. 보조기억장치(HDD)

속도가 빠르고 값이 비싼 저장장치를 CPU근처에, 싸고 용량이 큰 저장장치를 반대에 배치하여 적당한 가격으로 빠른속도, 큰 용량을 얻음