Operation System 1

박우민·2020년 6월 3일
0
post-thumbnail

컴퓨터 시스템은 여러개의 CPU와 장치 컨트롤러 구성되어 있고, 공통 버스로 이어저 메모리를 공유함

Computer Startup

부트스트랩 프로그램: PC 초기화 프로그램(ROM, RRPROM에 저장되어 있음)

역할

  • 초기화, 부트로더 실행(어떤 OS를 실행 시킬지 선택하여, 실행)

Computer-System Operation

장치 컨트롤러는 CPU에 이벤트 발생을 알리기 위해 인터럽트를 발생시킨다.

CPU는 인터럽트를 확인하고 발생한 이벤트를 처리한다.

컴퓨터는 여러 작업을 동시에 처리하는데, 당장 처리해야할 일이 생기면, 인터럽트를 발생시켜, 기존 작업을 중단 시키고, 일을 처리하며, 일이 마무리되면 기존 작업을 실행한다.

소프트웨어에서 발생하는 인터럽트는 트랩이라고 함
이 인터럽트는 시스템 콜이라는 특별한 명령을 이용하여 발생시킬 수 있음

I/O Structure

기억장치 또한 여러 입출력 장치 중 하나일 뿐이다. 운영체제는 각 장치 컴트롤러를 제어하기 위한 장치 드라이버를 가지고 있다.

Direct Memory Access Structure

  • 장치와 메모리를 직접 연결하는 방식
  • CPU와 커널을 거치지 않음으로써 성능이 좋음

Multiprocessor Systems

종류: 비대칭 멀티프로레싱, 대칭 멀티 프로세싱
모든 프로세서들은 하나의 메모리를 공유하고 동일한 작업을 병렬적으로 수행

각프로세서는 독립적으로 레지스터와 캐시를 가지고 있음

Operating System Structure

OS의 가장 중요한 부분 중 하나는 멀티프로그램 능력임

멀티 프로그래밍은 여러 프로그램을 메모리에 로드해두고(프로세스), 프로세스가 대기 상태가 되면 다른 프로세스의 작업을 수행하는 시스템이다.

이것은 CPU의 사용 효율을 높힐 수 있음

여기서 확장된 시스템이 시분할 시스템 or 멀티테스킹이라고 부름

Operating-System operations

운영체제는 인터럽트 주도적이며, 인터럽트가 없다면 시스템은 조용히 인터럽트를 기다림
사용자 프로그램이 임의로 하드웨어에 접근하여 인터럽트를 보내면 큰 문제가 생길 것이다. 따라서 방지가 필요하다.

Dual-Mode and Multimode Operation

User Mode, Kernel Mode가 존재
User Mode에서 Kernel Mode의 기능을 호출하고 싶으면, 시스템 콜을 이용해야 함

Process Management

운영체제는 프로세스 관리를 위해 CPU에게 프로세스와 쓰레드를 스케줄링하고, 프로세스를 생성하거나 제거하는 활동을 한다. 뿐만 아니라 일시정지하거나 재실행하고, 프로세스의 동기화(Synchronization)와 통신도 제공한다.

Caching

컴퓨터 시스템에 있어 정말 중요한 부분, 굉장히 빠른 작은 저장 장치
자주사용 될 것 같은 데이터를 미리 담아놓고 사용

https://parksb.github.io/article/5.html

profile
안녕하세요 Software Development Engineer 입니다.

0개의 댓글