dada's

컴퓨터 시스템의 구조와 운영체제 본문

CS

컴퓨터 시스템의 구조와 운영체제

dykang 2023. 5. 10. 22:55
728x90

컴퓨터 시스템의 구조

내부장치 ⇒ CPU, 메모리

외부장치 ⇒ 디스크, 키보드, 마우스, 모니터, 네트워크

외부장치에서 내부장치로 데이터를 읽어와 각종 연산을 수행, 그 결과를 외부장치로 다시 내보내는 방식으로 업무를 처리한다

메모리 및 입출력장치 등의 각 하드웨어 장치에는 컨트롤러라는 것이 붙어 있다. 컨트롤러는 일종의 작은 CPU로서 컴퓨터 전체에 CPU가 있듯 컨트롤러는 각 하드웨어 장치마다 존재하면서 이를 제어한다

운영체제

운영체제(operating system)란 컴퓨터 하드웨어 바로 윗단에 설치되는 소프트웨어이다.

사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층이다.

컴퓨터 시스템을 운영하는 기본적인 소프트웨어를 운영체제라고 한다.

운영체제도 하나의 소프트웨어로써 컴퓨터 시스템에서 실행되기 위해서 메모리에 올라가게 된다. 그러나 운영체제처럼 규모가 큰 프로그램이 모두 메모리에 올라갈 수 없어 운영체제 중 항상 필요한 부분만 전원이 켜짐과 동시에 메모리에 올려놓고(커널) 그렇지 않은 부분은 필요할 때 메모리에 올려서 사용한다.

 

💡 커널

  • 운영체제 중 항상 메모리에 올라가 있는 운영체제의 핵심 부분으로 하드웨어와 응용 프로그램 사이에서 인터페이스를 제공하는 역할을 하며 컴퓨터 자원을 관리하는 역할을 한다
  • 커널은 항상 컴퓨터 자원을 바라보고 있기 때문에 사용자와의 상호작용은 지원하지 않는다. 따라서 사용자와의 직접적인 상호작용을 위해 프로그램을 제공하는데 대표적으로 쉘(shell)이라는 명령어 해석기등이 있다
  • 커널의 가장 큰 목표는 컴퓨터의 물리적(하드웨어) 자원과 추상화 자원을 관리하는 것이다. 추상화란 물리적으로 하나뿐인 하드웨어를 여러 사용자들이 번갈아 사용할 수 있도록 마치 여러개처럼 보이게 하는 기술이다.
  • 커널이 수행하는 작업들 핵심
    • Task(Process) Management : 물리적 자원인 CPU를 추상적 자원인 Task로 제공 (CPU 관리 방법 참고)
    • Memory Management : 물리적 자원인 메모리를 추상적 자원인 Page 또는 Segement로 제공 ⇒ 가상메모리 구현 방법
    • File System : 물리적 자원인 디스크를 추상적 자원인 File로 제공
    • Network Management : 물리적 자원인 네트워크 장치를 추상적 자원인 Socket으로 제공
    • Device Driver Management : 각종 외부 장치에 대한 접근
    • Interrupt Handling : 인터럽트 핸들러
    • I/O (input output) Communication : 입출력 통신 관리

 

운영체제의 기능

운영체제의 역할은 하드웨어를 위한 역할과 사용자를 위한 역할 두 가지로 나뉜다.

  1. 컴퓨터 시스템 내의 자원(resource)를 효율적으로 관리하는 것
    • 운영체제의 핵심 기능은 자원을 효율적으로 관리하는 것이며, 따라서 운영체제를 자원관리자라고 부름
    • 자원이란 CPU, 메모리, 하드디스크 등 하드웨어 자원 뿐 아니라 소프트웨어 자원까지 통칭해서 부르는 말
    • 운영체제는 사용자 및 프로그램들 간에 자원이 형평성 있게 분배되도록 하는 균형자 역할도 함께 수행하며 효율성을 지키도록 동작
  2. 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공하는 것
    • 편리한 환경제공이란 운영체제가 여러 사용자 및 프로그램들에게 각각 독립적으로 컴퓨터를 사용하는 것과 같은 ‘환상’을 제공하는것
    • 하드웨어를 직접 다루는 복잡한 부분은 운영체제가 대신 해주고, 각 사용자 및 프로그램은 그에 대한 자세한 내용을 몰라도 프로그램을 실행할 수 있도록 해주는 기능을 제공 예) 파일 저장, 파일 읽기 등

그 외에도 사용자와 운영체제 자신을 보호하는 역할을 수행(보안 및 보호 기능)

728x90
Comments