해당 포스팅은 이화여대 반효경 교수님의 2014년도 운영체제 강의 내용에 대해 이해하고 정리를 위한 포스팅입니다.
참고자료 :
운영체제 강의
운영체제란?
운영체제는 컴퓨터 하드웨어 바로 위에 설치되는 소프트웨어 계층으로서 사용자 및 다른 소프트웨어와 하드웨어를 연결해주는 계층입니다.
즉 사용자나 다른 응용 소프트웨어들이 하드웨어와 직접 소통하며 어떤 작업을 하는 것이 아닌 운영체제를 매개자로써
운영체제의 관리를 받으며 더 효율적인 환경에서 각자의 역할을 수행할 수 있습니다.
운영체제의 목표
- 사용자나 소프트웨어와 어떻게 상호작용하며 기능을 할 것인지
- 운영체제는 동시 사용자/프로그램들이 각각 독자적으로 컴퓨터의 자원을 활용하며 수행되는 것 같은 환상을 제공
- 하드웨어와 어떻게 상호작용하며 기능을 할 것인지
- 하드웨어(프로세서(CPU), 기억장치(메모리), 입출력 장치) 즉, 컴퓨터 시스템의 자원을 효율적으로 관리하는 부분을 운영체제가 대행
cpu가 일하는 방식
제한된 cpu자원에서 여러가지 프로그램을 동시에 실행되는 경우 모든 작업을 동시에 처리하는 것이 아닌
아주 짧은시간(약 100밀리세컨드)에 cpu를 각프로그램이 번갈아 사용하면서 동기적으로 처리하게 됩니다.
고민해야할 부분 : 어떤 주기로 각 프로그램을 사용할 것인지, 어떤프로그램에 먼저 cpu를 할당하고 얼마의 시간을 주고 처리할것인지(정책적인 부분)
메모리가 일하는 방식
프로그램이 동시에 실행될 경우 메모리 공간의 일부분씩 각 프로그램에 할당하며 일을 처리하는데 이런 부분 역시
cpu가 효율적으로 메모리를 분배하여 관리를 하게 됩니다.
고민해야할 부분 : 어떻게 여러프로그램들에 얼마만큼의 메모리를 할당하여 분배할 것인지(매번 1/n으로 나누는게 효율적이진 않음)
운영체제를 더 쉽게 이해하기 위해서는 내가 직접 운영체제가되어 컴퓨터 하드웨어를 어떻게하면 효율적으로 관리할지,
또 운영체제 위에 소프트웨어나 사용자들에게 어떻게 컴퓨터 하드웨어 자원을 효율적으로 사용할 수 있게 해줄까⭐️
즉 컴퓨터자체로 받아들이는 것 보다는 하나의 컴퓨터를 통치하는 인격체로써 접근하면 도움이 될 것 입니다.