ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [운영체제] 컴퓨터 시스템 소개
    프로그래밍/컴퓨터 운영체제 2014. 12. 5. 01:01

    본 글은 한빛 아카데미에서 출판한 운영체제. 그림으로 배우는 원리와 구조 도서를 참고하여 요약한 글입니다. 개인적으로 공부하며 작성한 요약글이므로 실제 공부를 위해서는 직접 도서를 구매하셔서 공부하시는걸 추천합니다.



    컴퓨터 시스템 구성 요소


    컴퓨터 시스템은 물리적으로 하드웨어, 소프트웨어로 구성

    운영체제는 하드웨어와 사용자 사이에 위치하며 하드웨어와 소프트웨어 자원을 관리하는 프로그램




    1. 프로세서


    프로세서는 컴퓨터 하드웨어 구성요소 중 운영체제와 가장 밀접한 하드웨어로 컴퓨터 각 부분의 동작을 제어하고 연산을 수행

    중앙처리장치 (CPU, Central Processing Unit)이라고 한다.

    레지스터, 산술 논리 연산장치, 제어장치 등으로 구성된다.

    개인용 PC에서는 주로 주기억장치를 제외한 레지스터, 산술 논리 연산장치, 제어장치를 칩 하나로 구성한 마이크로프로세서를 이용한다.


    2. 버스


    버스는 프로세서를 비롯하여 장치간  또는 서브시스템을 서로 연결하여 정보를 주고받을 수 있게 해주는 통로.


    내부 버스 : 내부 버스는 프로세서 내부에서 레지스터, 연산장치, 메모리와의 인터페이스 등을 연결, 시스템 버스 인터페이스 회로를 통해 외부 버스와 연결된다.


    외부 버스 : 외부 버스는 프로세서와 메모리, 프로세서와 입출력장치, 입출력장치와 입출력장치를 연결, 일반적으로 시스템 버스라고도 하며 독립된 기능을 갖는 장치로 각 시스템 버스는 버스 제어기라고 불리는 제어회로를 가지고 있다.


    데이터 버스 : 컴퓨터 시스템에서 데이터, 명령어 등의 정보를 교환하는 전송로, 일반적으로 데이터 버스 신호선의 수가 프로세서의 워드 길이와 같으므로 프로세서 성능을 결정하는 요소가 된다.


    주소 버스 : 주소 버스는 하나의 시스템 장치에서 다른 장치로 주소 정보를 전송하는 데 사용


    제어 버스 : 제어 버스는 프로세서가 저장장치와 입출력장치에 데이터를 전송할 때 현재 수행중인 작업 종류나 상태를 다른 장치에 알릴때 이용하는 단방향 버스


    3. 레지스터


    레지스터는 프로세서에 위치한 고속 메모리로 프로세서가 바로 사용할 수 있는 데이터를 갖는다.

    특수한 값 하나를 저장하는 기억공간으로 사용되며 연산을 처리하다가 중간값을 저장하기도 한다.

    컴퓨터의 구조에 따라 레지스터의 크기, 종류가 다양하다.


    데이터 레지스터 : 함수연산에 필요한 데이터를 저장


    주소 레지스터 : 주소나 유효 주소를 계산하는 데 필요한 주소의 일부분을 저장한다.


    프로그램 카운터 (PC, Program Counter) : 프로그램 수행을 제어하는 명령어 실행 순서를 보관, 다음에 실행할 명령어의 주소를 저장


    명령어 레지스터 (IR : Instruction Register) : 현재 수행하는 명령어를 저장, 명령어 연산자 전달이 빠르다.


    프로그램 상태 레지스터 (PSR, Program Status Register) : 플래그 같은 상태 정보를 저장, 프로그램이 수행되는 순간마다 프로그램의 수행 상태와 프로세서 상태를 나타낸다.


    메모리 주소 레지스터 (MAR, Memory Address Register) : 메모리의 주소를 저장한다, 주소 레지스터, 프로그램 카운터등으로부터 주소 정보를 전달받는다.


    메모리 버퍼 레지스터 (MBR, Memory Buffer Register) : 메모리에서 정보를 읽을때, 정보를 저장할 때 사용하며 연상장치를 통해 메모리 주소 레지스터, 인덱스 레지스터, 프로그램 카운터 등의 주소 레지스터와 데이터 레지스터에 정보를 전달하는데 사용




    4. 메모리


    메모리는 컴퓨터와 성능과 밀접하며 다음과 같은 계증 구조를 이룬다.


    비트당 비용 (↑)            종류                    속도(↑)            크기(↓)

       레지스터

    캐시

    메인 메모리

    자기 디스크

    광학 디스크

    자기 테이프


    메인 메모리


    메인 메모리는 고유 주소를 가진 워드나 바이트로 구성된 대규모 배열

    주소를 읽거나 기록함으로써 상호 작용한다는 특성을 가지고 있다.


    가상 메모리


    가상메모리는 메인 메모리의 유효 크기를 늘리는 기법으로 디스크 같은 보조기억장치에 프로그램이나 데이터를 저장했다가 필요할 때 다시 메인 메모리로 이동시키는 기술이다.


    캐시


    캐시는 처리 속도가 빠른 프로세서와 상대적으로 느린 메인 메모리 사이에서 데이터나 정보를 저장하는 고속 버퍼.

    메모리에 캐시를 결합한 캐시 메모리 시스템은 메모리 가격과 성능을 절충하여 느린 메모리 때문에 발생하는 성능 저하를 줄여준다.


    5. 주변장치


    컴퓨터에 부수적인 장치들을 주변장치라 일컫는다.


    컴퓨터 시스템의 동작


    1. 컴퓨터 시스템의 동작 과정


    1. 입력장치를 통해 정보를 입력받아 메모리에 저장

    2. 메모리에 저장한 정보를 프로그램의 제어에 따라 인출하여 산술, 논리장치에서 처리

    3. 처리한 정보를 출력장치에 표시하거나 디스크에 저장


    2. 명령어 구성


    명령어는 프로세서가 실행할 연산을 나타내는 연산 코드 (Operation Code) 와 명령어가 처리할 데이터나 데이터가 저장된 주소에 관한 정보 (레지스터, 메모리)를 기술하는 오퍼렌드(Operand)로 이루어진다.


    3. 명령어 실행


    1. 명령어 인출

    2. 명령어 해석/프로그램 카운터 변경

    3. 오퍼랜드 인출

    4. 명령어 실행

    5. 결과 저장

    6. 다음 명령어

    7. 1번으로..


    인출 사이클


    인출 사이클은 명령어 실행 사이클의 첫 번째 단계로 메모리 시스템에서 다음 명령어를 인출하기 위해 필요한 타이밍 신호는 프로세스가 생성한다.


    간접 사이클


    간접 사이클은 인출 사이클과 실행 사이클 사이에 위치하며 명령어에 포함된 주소를 이용하여 실제 명령어 실행에 필요한 데이터를 인출한다


    실행 사이클


    실행 사이클에서는 명령어 레지스터의 명령어를 해석하고 필요한 신호를 발생시켜 실제로 명령어를 처리한다. 이 때 소비되는 시간을 실행 시간이라고 한다.


    인터럽트 사이클


    프로세스는 실행 사이클 이후에 종료된다.


    4. 인터럽트


    인터럽트는 컴퓨터에서 문제가 발생하였을 때 긴급상황을 적절히 처리하기 위해 존재한다.

    댓글 0

Designed by Tistory.