목록Knowledge/Operation System (4)
MyCloud
임계구역이란? 임계구역이란, 공유 자원에 접근하는 코드의 일부를 말합니다.일반적으로 둘 이상의 프로세스는 공유 자원에 대해 동시에 접근할 수 없습니다.하나가 먼저 실행하고 난 뒤 끝나면 다음 프로세스가 들어가서 실행해야 합니다. do {entry sectioncritical sectionexit sectionremainder section} while (TRUE); 따라서 각 프로세스는 자신의 임계 구역에 들어가려면 들어가도 되는지 요청해야 합니다.이런 요청이 entry section 에서 이루어지게 됩니다.만약, 이미 들어가 있는 프로세스가 있다면 entry section 에서 기다리다가들어가도 된다는 신호가 오면 critical section 으로 들어갑니다.이렇게 잘 돌아가면 좋을텐데 임계구역에는 ..
프로세스(Process) 란? 프로세스란, 메모리 상에 올라와 실행 중인 프로그램을 말합니다.스마트폰의 어플리케이션, 온라인 게임 모두 프로세스에 해당합니다. 위의 사진처럼 컴퓨터 또는 스마트폰에서 실행되는 프로세스는 하나가 아니라 여러 개 일 수 있습니다. 어떻게 이게 가능할까요? 컴퓨터에서는 CPU의 프로세서를 통해 하나의 프로세스를 실행하는데,요즘에는 하나의 컴퓨터에 여러 개의 프로세서가 들어갑니다. 이를 멀티 프로세서라고 합니다.CPU의 성능이 올라간 것 뿐만 아니라, 다른 이유도 있습니다.운영체제가 CPU가 실행할 프로세스를 빠르게 교체하고 있기 때문에동시에 여러 개의 프로세스가 실행된다고 느끼게 됩니다. 프로세스 생명주기 운영체제는 프로세스의 관리를 위해 5가지의 상태로 구분합니다.이를 Fiv..
운영체제의 원리를 알아보기 전에 컴퓨터 아키텍쳐를 이해하는 것이 중요합니다.컴퓨터 아키텍쳐가 어떻게 발전했는지, CPU와 메모리가 어떻게 구성되는지를 알아보겠습니다. 튜링 머신 (Turing Machine) 영화 "이미테이션 게임"을 보면 좀 더 이해가 쉬울 수 있습니다. (물론 사실과 다른 부분이 있음)영화에 주인공으로 앨런 튜링이 나오는데, 그 분이 바로 튜링 머신을 만든 컴퓨터의 조상님입니다.처음의 컴퓨터는 복잡한 계산을 처리하기 위한 목적으로 만들었습니다.영화와 같이 2차 세계 대전에서 독일군의 '애니그마' 암호학 기계를 처리하기 위해서(?) 튜링 머신의 원리는 다음과 같습니다.어떤 장치(컴퓨터)가 칸으로 나누어진 테이프(메모리)에 기호를 쓰면서 동작합니다.이때 테이프의 길이는 무한하지만 쓸 수 ..
운영체제가 하는 일 운영체제가 하는 일은 크게 3가지가 있습니다. 1.사용자 인터페이스 역할유저모드(User mode)와 커널모드(Kernel mode)가 분리되어 있기 때문에사용자가 컴퓨터를 사용하기 쉽게 도와줍니다. 2.자원 관리운영체제는 메모리와 프로세스를 관리해줍니다.한정적인 메모리를 어떻게 하면 효율적으로 사용(Memory-Management)할지,여러 프로세스를 어떤 순서로 실행할지를 결정(Scheduling)해줍니다.따라서 운영체제를 통해 자원을 효율적으로 사용하게 되고,CPU의 성능을 극대화시킬 수 있습니다.이밖에도 입출력에 대한 보조역할, 컴퓨터 보안, 에러에 대한 처리 등의 역할이 있습니다. 3.API를 제공만약 운영체제가 없다면 개발자가 하드웨어 쪽의 구체적인 부분까지 공부해야 합니다..