본문 바로가기

운영체제25

운영체제 6장 - 프로세스 관리(3) : 쓰레드 및 프로세스 동기화 - 운영체제 6장- 프로세스 관리(3) : 쓰레드 및 프로세스 동기화 - 쓰레드라고 하는 것은 프로그램 내부에 흐르는 맥, 흐름이라고 한다. 우리가 상위 언어 예를 들어 자바나 C로 프로그램을 작성할 때 메인 함수를 통해 각종 표현식이 돌아 프로그램이 끝이 나는 것을 “맥이 흐른다.”라고 한다. 기본적으로는 한 프로그램에 맥이 하나 흐른다. 하지만 한 프로그램에 2개 이상의 맥이 흐를 수 있는데 이것을 다중 쓰레드라고 한다. 하지만 다중 쓰레드는 실제로 맥이 빠른 시간 간격으로 스위칭을 진행하는 것이 여러 가지 맥이 동시에 진행되는 것이 아니다. 시간 간격이 매우 짧아 동시에 맥이 흐르는 것처럼 보이는 것이다. 현재 대부분의 프로그램은 다중 쓰레드이다. 예를 들어 웹 브라우저를 들면 화면을 출력을 시켜주는 .. 2017. 4. 17.
운영체제 4장 - 프로세스 관리(1) - 운영체제 4장- 프로세스 관리(1) - 운영체제가 하는 역할은 매우 많다. 하지만 프로세스 관리는 그 역할 중 가장 중요한 역할이라고 할 수 있다. 그러면 프로세스에 대해 먼저 알아보자. 프로세스는 실행 중인 프로그램이다. 하드디스크에 있는 프로그램이 메인 메모리로 적재되어 있을 때 프로세스라고 부른다. 프로세스는 다섯 가지의 상태 중 하나의 상태에 존재한다. 메인 메모리에 올라오는 상태인 new, CPU 할당을 받는 것을 기다리는 ready, CPU가 할당되어 작업을 수행 중인 running, I/O와 같은 CPU 외의 할당을 받아 기다리는 waiting, 이러한 모든 작업이 끝날 경우 terminated라는 상태에 존재하게 된다. 이러한 상태를 나타내기 위해서는 프로세스에 대한 모든 정보가 저장되어 .. 2017. 4. 16.
운영체제 3장 - 이중 모드 및 하드웨어 보호 - 운영체제 3장- 이중 모드 및 하드웨어 보호 - 컴퓨터를 사용하는 환경은 다양하다. 특정 사람이 특정 컴퓨터만 사용하는 경우도 있겠지만 한 컴퓨터를 여러 사람이 동시에 사용하거나 한 사람이 여러 개의 프로그램을 동시에 실행하는 경우 한 사람의 고의 또는 실수로 다른 프로그램 전체가 영향을 받을 수 있는 환경이 만들어진다. 예를 들면 많은 사용자들이 같은 컴퓨터를 사용하고 있는데 특정 사람의 stop(컴퓨터 강제 종료) 명령어 실행하는 프로그램을 갑자기 실행시키면 모든 사용자가 하던 작업이 종료되어 큰 영향을 끼칠 수 있다. 이런 문제가 발생하지 않기 위한 보호 장치가 바로 이중 모드이다. 이중 모드는 사용자 모드와 관리자 모드로 두 가지의 모드를 가지고 있어서 이중 모드이다. 사용자 모드는 단순한 사용자.. 2017. 4. 16.
운영체제 2장 - 운영체제 종류와 역할 - 운영체제 2장- 운영체제 종류와 역할 - 운영체제의 종류는 운영체제의 발전 과정을 보면 알 수 있다. 맨 처음의 컴퓨터는 운영체제를 가지고 있지 않았다. 사용자가 일일이 모든 상황을 컨트롤 해야만 컴퓨터를 사용할 수 있었다. 이런 점에서 매우 불편함을 느꼈고 컴퓨터 자체에서 관리를 해주는 프로그램을 만들 필요성을 있었다. 따라서 최초의 운영체제가 탄생했다. 처음에 나온 운영체제는 일괄처리 운영체제이다. 처리해야 할 데이터를 일정 기간 또는 일정량 정리하여 일괄 처리하는 것이었다. 하지만 일괄처리만으로는 불편함을 없앨 수 없었다. 그래서 나온 것이 다중프로세서 운영체제이다. 다중 프로그래밍 시스템에서 메모리에 더 많은 유저 프로그램을 가동시키고 싶었다. 또한 한 명의 유저 프로그램이 쉬면 다른 유저의 프로.. 2017. 4. 14.
컴퓨터 구조 3장 - 프로그램 밑의 세계 - 컴퓨터 구조 3장- 프로그램 밑의 세계 - 컴퓨터는 하드웨어적으로 소프트웨어적으로 어떻게 구성이 되어 있을까? 먼저 하드웨어적인 부분을 생각해보도록 하자. 컴퓨터의 고전적 구성 요소 다섯 가지는 입력, 출력, 메모리, 데이터패스, 제어 유닛이다. 데이터패스와 제어 유닛을 합쳐 프로세서라고 부른다. 우리가 가진 컴퓨터를 한 번 뜯어보도록 하자. 우선 본체를 뜯어보기 전에 우리는 먼저 입력 장치와 출력 장치를 볼 수 있다. 마이크나 키보드 등이 입력 장치이고 스피커나 디스플레이와 같은 것이 출력 장치가 될 수 있다. 최근에는 터치스크린을 많이 사용하여 입출력을 동시에 작동한다. 터치스크린은 정전용량 감지 기법을 사용하여 만들어진다. 이제는 컴퓨터의 상자를 한 번 열어보자. 본체를 뜯으면 집적회로 또는 칩이라.. 2017. 4. 12.