본문 바로가기

개발/정리라고 할까나

모든 프로그래밍 언어를 관통하는 개념




컴퓨터를 킨다는 것은 운영체제를 실행시킨다는 의미이다.
프로그래밍 언어로 작성하는 코드도 결국에는 운영체제의 도움 아래에서 작동한다.
 
사용자가 응용프로그램을 조작하면 운영체제를 거쳐서 CPU나 메모리에 접근할 수 있다.
응용 프로그램은 운영체제를 통해서 하드웨어에 접근할 수 밖에 없다.(커널은 하드웨어와 운영체제 사이에서 핵심적인 역할을 하며, 하드웨어를 사용할 수 있게 해준다.)


운영체제의  중요한 역할 중 하나는 바로 자원을 관리하는 것이다.
씨피유, 메모리, 보조기억장치 등을 통틀어 컴퓨터 자원이라고 한다. 여러 프로그램이 동작하고 있을 때 시급한 프로그램에게 컴퓨터 자원을 배분하는 역할을 운영체제가 수행한다.


컴퓨터 사용자가 작업을 하지 않는 상태라고 하더라도 컴퓨터가 켜져 있다면 운영체제는 끊임 없이 일을 하고 있다.
인터넷 통신, 메모리 및 하드디스크 관리 등은 사용자에게 보여지지 않지만 모두 운영체제를 통해서 관리되고 있다.
이것이 가능한 이유는 씨피유가 짧은 시간 안에 많은 일을 할 수 있기 때문인데,사람이 입력을 주는 속도는 느리므로 그 사이에 다른 일들을 번갈아 가면서 수행한다. 

물리 코어와 가상 코어를 통해서 마치 여러개의 CPU가 있는 것처럼 동작한다.


운영체제에 대한 설명을 통해서 C언어의 중요성을 설명할 수 있다. 
C언어는 운영체제를 만들기 위한 언어로 시작했기 때문이다.  






'개발 > 정리라고 할까나' 카테고리의 다른 글

자바 공부 텍스트로 정리  (0) 2019.01.05