Master Piece of jun/컴퓨터개론

Computer System Structure과 OS의 정의

JUNFUTURE 2021. 11. 8. 01:07

1. Computer System Structure

  • 컴퓨터 시스템은 4가지 요소로 divide됨
    • Hardware - basic computing resources 제공
    • OS - Control & Coordinate use of hardware among various app, users
    • Application program - 시스템 자원은 유저의 computing problem을 solve하기 위해 쓰임
    • users - 사람, 기계, 다른 computer

2. Operating System Definition

  • system의 입장
    1. OS is a resource allocator : 모든 리소스들을 관리(manage)한다. not only hardware but also resources.
    2. ⇒ 자원은 한정되어있고 프로세스가 사용하고자 하는 것은 많아 경쟁이 생기고 배분이 잘 안되면 사용자 (user, process)가 기다리게 된다. 즉, 한정된 자원을 합리적으로 배분하여 효율성을 높여야 한다. (conflicting request 속 한정된 자원을 합리적 배분)
    3. OS is a control program
    4. ⇒ execution of programs 중, 자원과 메모리들을 쓰는 과정 속 발생하는 침범이나 충돌등 실행중 발생할 수 있는 errors 와 improper use of the computer를 prevent한다.
    ⇒ OS의 본질은 프로그램 : 존재목적 ⇒ CPU는 1개로 공유하고 자원도 한정, 이를 효율적으로 사용하기 위함
  • user의 입장
    1. maximize resource utilization
    2. compromise individual usability vs resource utilization사용자의 요구 (사칙연산, 로직)을 수행하는 프로그램, 항상 CPU를 사용하는게 아님. 인풋 → 처리 → 아웃풋..⇒ 그동안 CPU가 다른 일 할 수 있도록 하는 것 ~ resource utilization 증진
    3. (만약 A,B가 CPU를 써야하는데 A실행 다 끝나고 B를 실행? ⇒ individual usability가 떨어짐)
    4. 프로그램을 쓰며 항상 CPU쓰는게 아니라 입출력 동안에는 할일이 X (=idle time)
    5. ⇒ coordinate & balancing 한다. 개인의 사용과 자원의 활용도를 잘 조정하고 균형을 맞춰야함.

부팅

  • initializes all aspects of system
  • firmwrae에 있는 boot loader 실행 -> OS 첫부분 실행 
    • load OS kernel → 프로그램 첫부분 실행 → 명렁대기

OS의 커널

  • OS 사용을 위해 필요한 부분 (과일의 과육)

concurrent execute의 의미

  • 어떤 프로그램이나 알고리즘이 순서에 상관없이 동시에 수행될 수 있다면 concurrent하다.
  • ex) I/O 관련일과 CPU는 동시에 실행될 수 있다.