Skip to content

Latest commit

 

History

History
326 lines (188 loc) · 18.5 KB

2장__운영체제_개요.md

File metadata and controls

326 lines (188 loc) · 18.5 KB

2장 운영체제 개요


2-1 🍂 운영체제의 정의 mihykim

  • 1. 다음은 운영체제에 대한 설명입니다. <보기>에서 알맞은 단어를 골라 빈 칸을 채워주세요. (중복허용)
    <보기>
    소프트렌즈, 하드렌즈, 소프트웨어, 하드웨어, 터널(tunnel), 커널(kernel)`
    
    • 1-1. 운영체제 (operating system) 란 컴퓨터       바로 윗단에 설치되는      를 말한다. (hint 그림참조)

    • 1-2. '시스템'이라는 용어는 기반이나 틀이 되는 하드웨어를 지칭할 때 주로 사용되는데,      인 운영체제에 시스템이라는 용어가 사용된 것은      가 운영체제와 한 몸이 되어야만 사용자에게 쓰일 수 있는 진정한 컴퓨터 시스템이 되기 때문이다.
    • 1-3. 메모리에 상주하는 운영체제의 부분을      이라고 부른다.
  • 2. (주관식) 열정적인 학습자 '가은'👩은 전원이 켜졌을 때 운영체제 모두가 메모리에 올라가지 않고, 커널만 올라가는 것을 발견했습니다. 그 이유는 무엇일까요?
📄 답지
  • 1. 다음은 운영체제에 대한 설명입니다. <보기>에서 알맞은 단어를 골라 빈 칸을 채워주세요. (중복허용)
    <보기> 소프트렌즈, 하드렌즈, 소프트웨어, 하드웨어, 터널(tunnel), 커널(kernel)`
    
    • 1-1. 운영체제(operating system)란 컴퓨터 하드웨어 바로 윗단에 설치되는 소프트웨어를 말한다.
    • 1-2. '시스템'은 주로 기반이 되는 하드웨어를 지칭하는 용어인데, 소프트웨어인 운영체제에 시스템이라는 용어가 사용된 것은 하드웨어가 운영체제와 한 몸이 되어야만 사용자에게 쓰일 수 있는 진정한 컴퓨터 시스템이 되기 때문이다.
    • 1-3. 메모리에 상주하는 운영체제의 부분을 커널이라고 부른다.
  • 2. (주관식) 열정적인 학습자 '가은'👩은 전원이 켜졌을 때 운영체제 모두가 메모리에 올라가지 않고, 커널만 올라가는 것을 발견했습니다. 그 이유는 무엇일까요?
    • 정답: 한정된 메모리를 효율적으로 사용하기 위해
    • 소프트웨어가 실행되려면 메모리에 그 프로그램이 올라가 있어야 한다. 운영체제 자체도 하나의 소프트트웨어로서 전원이 켜짐과 동시에 메모리에 올라간다. 하지만 운영체제 처럼 규모가 큰 프로그램이 모두 메모리에 올라간다면 한정된 메모리 공간의 낭비가 심할 것이다. 따라서 운영체제 중 항상 필요한 부분만을 전원이 켜짐과 동시에 메모리에 올려놓고 그렇지 않은 부분은 필요할 때 메모리에 올려서 사용하게 된다.


2-2 🍂 운영체제의 기능 daelee

  1. 운영체제의 두 가지 주요 기능은 컴퓨터 시스템 내의 자원을 효율적으로 관리하는 것과, _________을 제공하는 것이다.

  2. 운영체제를 자원관리자(resource manager)라고 부르기도 하는데, 이때 자원이란 CPU, 메모리, 하드디스크 등 하드웨어 자원을 말한다. (O / X / △ / ▲)

📄 답지
  1. 운영체제의 두 가지 주요 기능은 컴퓨터 시스템 내의 자원을 효율적으로 관리하는 것과, _________을 제공하는 것이다.

    정답 : 컴퓨터 시스템을 편리하게 사용할 수 있는 환경

    컴퓨터의 복잡한 구조를 알지 못해도 추상화된 인터페이스를 통해 쉽게 프로그램을 사용할 수 있도록 해준다.

    위 두 가지 주요 기능 외에도, 운영체제는 컴퓨터의 보안 및 보호 기능을 수행한다.

  2. 운영체제를 자원관리자(resource manager)라고 부르기도 하는데, 이때 자원이란 CPU, 메모리, 하드디스크 등 하드웨어 자원을 말한다. (O / X / △ / ▲)

    정답 : △

    운영체제를 자원관리자(resource manager)라고 부르기도 하는데, 이때 자원이란 CPU, 메모리 등 하드웨어 자원뿐 아니라 소프트웨어 자원까지를 말한다



2-3 🍂 운영체제의 분류 secho

1번

OS가 다중작업을 처리할 때 여러 프로그램이 CPU의 작업시간을 나누어 쓰는 시스템을 ____시스템이라고 부른다


2번

메모리 공간을 분할해 여러 프로그램들을 동시에 메모리에 올려놓고 처리하는 시스템을 __ 프로그래밍시스템이라고 한다


3번

정해진 시간 안에 어떤 일이 반드시 처리됨을 보장해야하는 0.___운영체제1.____(영어) 실시간시스템, 2.____(영어) 실시간시스템으로 분류된다.

스트리밍 서비스인 넷플릭스처럼 데이터가 시간에 알맞게 전달되지 않아서 재생이 끊기거나 화면이 이상하게 나오는 등 이와 비슷한 문제가 발생할 순 있지만 위험한 결과를 초래하지 않는 실시간 시스템은 ____ 실시간 시스템이다.

📄 답지
  • 1번 답지.

OS가 다중작업을 처리할 때 여러 프로그램이 하나의 CPU의 작업시간을 나누어 쓰는 시스템을 시분할시스템이라고 부른다

  • 2번 답지

메모리 공간을 분할해 여러 프로그램들을 동시에 메모리에 올려놓고 처리하는 시스템을 다중 프로그래밍시스템이라고 한다

  • 3번 답지

정해진 시간 안에 어떤 일이 반드시 처리됨을 보장해야하는 0. 실시간 운영체제1.hard (영어) 실시간시스템, 2.soft (영어) 실시간시스템으로 분류된다.

스트리밍 서비스인 넷플릭스처럼 데이터가 시간에 알맞게 전달되지 않아서 재생이 끊기거나 화면이 이상하게 나오는 등 이와 비슷한 문제가 발생할 순 있지만 위험한 결과를 초래하지 않는 실시간 시스템은 soft 실시간 시스템이다.



2-4 🍂 운영체제의 예 jehong

  1. MS 윈도우는 개인용 컴퓨터를 위한 운영체제다. ( O / X )

  2. MS 윈도우는 _________ 버전부터 그 자체로 하나의 온전한 운영체제 역할을 수행할 수 있게 되었다.

  3. 다음 중 유닉스의 장점을 고르세요 (중복 가능)

    a. 안전성

    b. 이식성

    c. 초보자 편리성/보편성

    d. 확장성

    e. 중독성

  4. ___________ 의 등장 및 급성장으로 유닉스 또한 개인용 컴퓨터에서 점차 그 사용 규모가 늘어가고 있는 추세다.

📄 답지
  1. MS 윈도우는 개인용 컴퓨터를 위한 운영체제다. ( O ) p.54

    O

  2. MS 윈도우는 윈도우95 버전부터 그 자체로 하나의 온전한 운영체제 역할을 수행할 수 있게 되었다. p.54

  3. 다음 중 유닉스의 장점을 고르세요 (중복 가능) p.56

    a. 안전성

    b. 이식성

    c. 초보자 편리성/보편성

    d. 확장성

    e. 중독성

    a. 안정성

    오랜 전통을 지닌 운영체제로 안정성을 가장 큰 장점으로 한다.

    b. 이식성

    사람이 이해하기 편한 고급언어인 C언어로 작성되어 다른 기종에 이식하는 것이 비교적 쉽다 .

    d. 확장성

    하드웨어 기술이나 소프트웨어 기술이 발전하더라도 확장성을 지원할 수 있게 설계되어 급변하는 기술 환경 속에서도 현재까지 널리 사용되고 있다.

  4. 리눅스(Linux) 의 등장 및 급성장으로 유닉스 또한 개인용 컴퓨터에서 점차 그 사용 규모가 늘어가고 있는 추세다. p.57



2-5 🍂 운영체제의 자원관리 기능 taelee

  • 1. 자원관리는 운영체제의 주요 역할 중 하나이다. 다음 중 운영체제의 자원 관리에 관한 설명으로 틀린것은?

    a. 여기서 자원은 소프트웨어 자원과 하드웨어 자원으로 나뉜다.

    b. CPU메모리의 경우 시분할(time-sharing) 방식으로 관리한다.

    c. 자원관리란 자원(CPU, 메모리등)의 한정된 용량을 효율적으로 나눠 사용하는 것뿐만 아니라 입출력 장치의 접근 권한 등의 관리도 포함한다.


  • 2. CPU 스케줄링이란 CPU에 여러 프로세스를 효율적으로 배분하는 방식을 의미한다. 다음은 CPU 스케줄링 방식을 일상생활에 비유해 보았다. 알맞은 CPU 스케줄링 방식을 보기에서 찾아 연결하세요.

    보기) 선입선출, 선입후출, 후입선출, 사발통문, 라운드 로빈, 시간제한 방식, 우선순위 방식, 스코어 랭킹 방식

    a. 현준은 A국에 놀러갔다. 비행기에 내리자마자 기념품을 사러 가게에 들어간 현준은 계산할 차례가 되자 무척 당황한다. A국은 특이하게도 지폐와 동전에 숫자가 아닌 A국의 언어로 금액이 적혀있었다.(1000원[X], 천원[O]) 당황한 현준은 뒷사람에게 차례를 양보하고 옆에서 조용히 파파고를 사용해 지폐를 세려고 했지만 A국은 새치기를 하는 경우 엄벌에 처하기 때문에 뒷사람이 먼저 계산할 수가 없었다. 하는 수없이 현준은 그 자리에서 1시간동안 돈을 세었고 마침내 계산을 하였다. 현준은 뒷사람이 계산이 끝나기 전에 얼른 가게를 뛰쳐나왔다. 이는 CPU 스케줄링 중 어느 방식과 비슷한가?

    b. 연희는 친구들의 고민상담을 잘 들어주기로 학교에서 유명하다. 상담맛집으로 유명해진 연희는 하루에 100명씩 찾아와 상담을 한다. 한번에 한명씩밖에 상담을 할 수 없는 연희는 최대한 많은 이들의 상담을 들어주고 싶어 방법을 생각해낸다. 어느날 부터 연희는 한명당 한번에 10초씩만 상담해주기로 했다. 10초만으로 상담이 끝나지 않은 친구는 맨 뒤로 가서 다시 줄을 서서 차례를 기다린다. 이는 CPU 스케줄링 중 어느 방식과 비슷한가?

    (현준은 왜인지 10초 상담을 받은 뒤 기분이 더 안 좋아졌다)

    c. 미혜는 미식가다. 그녀는 모든 음식에 점수를 매겨놓는다. 점수가 높은 음식과 낮은 음식이 있는 경우 높은 음식을 다 먹을 때까지 낮은 음식은 쳐다도 보지 않는다. 이는 CPU 스케줄링 중 어느 방식과 비슷한가?


  • 3. 메모리 관리 방식중 고정 분할 방식은 메모리를 고정된 사이즈와 갯수로 분할해 놓는다. 이 경우 고정된 영역보다 작은 영역의 메모리를 필요로하는 프로그램을 할당할 경우 남는 부분이 생긴다 이 부분을 OO OO라고 한다.

  • 4. 가변 분할 방식에서 여러 프로세스들이 차례대로 할당되었다가 그 중 한 부분이 해제된 경우 해당 부분을 다른 프로세스에게 할당할 수 있다. 이때 해제된 영역보다 작거나 같은 사이즈의 프로세스만을 할당할 수 있는데 이때도 남는 부분이 생겨 낭비가 될 수 있다. 이 부분을 OO OO라고 한다.

  • 5. 다음중 가상 메모리의 관한 설명으로 옳은 것은?(중복 가능)

    a. 고정 분할 방식, 가변 분할 방식과 달리 실제 메모리 사이즈(RAM 용량) 보다 더 큰 메모리를 사용할 수 있게 해준다.

    b. 프로그램의 모든 부분이 메모리의 올라갈 필요가 없는 점을 이용해서 만들어졌다.

    c. 꼭 메모리에 올려야 될 부분만 올리고 나머지는 보조기억장치(HDD, SSD)에 저장한다.

    d. 위에서 보조기억장치에 올라가는 나머지 영역을 swap영역이라고 한다.

    e. 가상 메모리 공간은 페이지라는 동일한 크기의 작은 단위로 나뉘어 물리적 메모리와 swap 영역 일부분씩 저장된다.


  • 5.5 쉬어가기(문제 아님)

윈도우에서는 CMD를 켜서 systeminfo 입력하고

맥은 터미널을 켜서 vm_stat 혹은 vm_stat 3을 입력해서 가상 메모리를 확인할 수 있습니다.

맥의 경우 위에 언급된 page형식을 보여집니다!


  • (맞추면 1등급) 6. 주변 장치와 입출력장치는 각 컨트롤러가 CPU에게 인터럽트를 보내는 방식으로 장치들의 신호를 처리해준다. 그렇다면 CPU는 인터럽트가 도착한 순간 하던 모든 일을 내버려두고 바로 처리를 시작할까요? (O/X)

📄 답지
  • 1. 자원관리는 운영체제의 주요 역할 중 하나이다. 다음 중 운영체제의 자원 관리에 관한 설명으로 틀린것은?

    a. 여기서 자원은 소프트웨어 자원과 하드웨어 자원으로 나뉜다.

    b. CPU메모리의 경우 시분할(time-sharing) 방식으로 관리한다.(정답) __메모리의 경우 주소를 이용한 공간분할(space_sharing)방식으로 관리한다. __

    c. 자원관리란 자원(CPU, 메모리등)의 한정된 용량을 효율적으로 나눠 사용하는 것뿐만 아니라 입출력 장치의 접근 권한 등의 관리도 포함한다.


- __2. CPU 스케줄링이란 CPU에 여러 프로세스를 효율적으로 배분하는 방식을 의미한다. 다음은 CPU 스케줄링 방식을 일상생활에 비유해 보았다. 알맞은 CPU스케줄링 방식을 보기에서 찾아 연결하세요.__ 보기) `선입선출`, `선입후출`, `후입선출`, `사발통문`, `라운드 로빈`, `시간제한 방식`, `우선순위 방식`, `스코어 랭킹 방식`

a. 현준은 A국에 놀러갔다. 비행기에 내리자마자 기념품을 사러 가게에 들어간 현준은 계산할 차례가 되자 무척 당황한다. A국은 특이하게도 지폐와 동전에 숫자가 아닌 A국의 언어로 금액이 적혀있었다.(1000원[X], 천원[O]) 당황한 현준은 뒷사람에게 차례를 양보하고 옆에서 조용히 파파고를 사용해 지폐를 세려고 했지만 A국은 새치기를 하는 경우 엄벌에 처하기 때문에 뒷사람이 먼저 계산할 수가 없었다. 하는 수없이 현준은 그 자리에서 1시간동안 돈을 세었고 마침내 계산을 하였다. 현준은 뒷사람이 계산이 끝나기 전에 얼른 가게를 뛰쳐나왔다. 이는 CPU 스케줄링 중 어느 방식과 비슷한가? 정답: 선입선출

b. 연희는 친구들의 고민상담을 잘 들어주기로 학교에서 유명하다. 상담맛집으로 유명해진 연희는 하루에 100명씩 찾아와 상담을 한다. 한번에 한명씩밖에 상담을 할 수 없는 연희는 최대한 많은 이들의 상담을 들어주고 싶어 방법을 생각해낸다. 어느날 부터 연희는 한명당 한번에 10초씩만 상담해주기로 했다. 10초만으로 상담이 끝나지 않은 친구는 맨뒤로 가서 다시 줄을 서서 차례를 기다린다. 이는 CPU 스케줄링 중 어느 방식과 비슷한가? __ 정답: 라운드 로빈__

(현준은 왜인지 10초 상담을 받은 뒤 기분이 더 안 좋아졌다)

c. 미혜는 미식가다. 그녀는 모든 음식에 점수를 매겨놓는다. 점수가 높은 음식과 낮은 음식이 있는 경우 높은 음식을 다 먹을 때까지 낮은 음식은 쳐다도 보지 않는다. 이는 CPU 스케줄링 중 어느 방식과 비슷한가? __ 정답: 우선순위 방식__

  • 3. 메모리 관리 방식중 고정 분할 방식은 메모리를 고정된 사이즈와 갯수로 분할해 놓는다. 이 경우 고정된 영역보다 작은 영역의 메모리를 필요로하는 프로그램을 할당할 경우 남는 부분이 생긴다 이 부분을 OO OO라고 한다. 정답: 내부 조각

  • 4. 가변 분할 방식에서 여러 프로세스들이 차례대로 할당되었다가 그 중 한 부분이 해제된 경우 해당 부분을 다른 프로세스에게 할당할 수 있다. 이때 해제된 영역보다 작거나 같은 사이즈의 프로세스만을 할당할 수 있는데 이때도 남는 부분이 생겨 낭비가 될 수 있다. 이 부분을 OO OO라고 한다. 정답: 외부 조각

  • 5. 다음중 가상 메모리의 관한 설명으로 옳은 것은?(중복 가능) 정답: a, b, c, d, e (전부 옳음)

    a. 고정 분할 방식, 가변 분할 방식과 달리 실제 메모리 사이즈(RAM 용량) 보다 더 큰 메모리를 사용할 수 있게 해준다.

    b. 프로그램의 모든 부분이 메모리의 올라갈 필요가 없는 점을 이용해서 만들어졌다.

    c. 꼭 메모리에 올려야 될 부분만 올리고 나머지는 보조기억장치(HDD, SSD)에 저장한다.

    d. 위에서 보조기억장치에 올라가는 나머지 영역을 swap영역이라고 한다.

    e. 가상 메모리 공간은 페이지라는 동일한 크기의 작은 단위로 나뉘어 물리적 메모리와 swap 영역 일부분씩 저장된다.


  • 5.5 쉬어가기(문제 아님)

윈도우에서는 CMD를 켜서 systeminfo 입력하고

맥은 터미널을 켜서 vm_stat 혹은 vm_stat 3을 입력해서 가상 메모리를 확인할 수 있습니다.

맥의 경우 위에 언급된 page형식을 보여집니다!


  • (맞추면 1등급) 6. 주변 장치와 입출력장치는 각 컨트롤러가 CPU에게 인터럽트를 보내는 방식으로 장치들의 신호를 처리해준다. 그렇다면 CPU는 인터럽트가 도착한 순간 하던 모든 일을 내버려두고 바로 처리를 시작할까요? (O/X)

정답 : X 공룡책에 의하면 CPU는 현재 실행중인 명령어를 처리한 뒤 인터럽트가 있는지 검사하고 실행한다고 합니다. ⬇ 공룡책 해당 부분 정리

  • CPU는 인터럽트 요청 라인(interrupt request line)을 통해 컨트롤러가 보낸 인터럽트 신호를 감지한다.
  • CPU는 하나의 명령어 실행을 끝내면 인터럽트 발생 여부 확인