본문 바로가기

CS3

프로세스 (Process) 오늘의 주제는 프로세스!! 대부분 '프로세스와 스레드' 라는 주제의 글을 많이 볼 수 있는데, 저는 일단 프로세스를 공부하면서 연계되는 모든 과정을 최대한 나무처럼 뻗어나가면서 알아보려고 합니다. 즉, 제목은 프로세스 지만.... 내용을 보면.. 프로세스가 뭔지부터 시작해서 프로세스의 상태, PCB, fork() 등등.... 까지 들어갈 예정이랍니다. 정리해보면 아래 정도를 다룰 수 있겠네요😂 어우 진짜 CS는 알면 알수록 어디가 끝인지 모르겠지만 일단 오늘은 저정도만 보겠습니다. 아래 내용은 쉽게 배우는 운영체제 라는 책을 참고해서 작성했습니다 :) 프로그램? 프로세스? 뭐가 다른거야? 일단 프로그램은 하드디스크 같은 저장장치에 저장되어있는 정적인 상태를 말합니다. 어떠한 데이터를 사용해서 어떤 작업을.. 2021. 5. 19.
버퍼, 캐시, 레지스터 (Buffer, Cache, and Register) 캐시와 버퍼, 그리고 레지스터는 데이터를 임시적으로 저장한다는 공통점이 있습니다. 그렇다면 어떤 경우에 어떤 것을 사용하게 될까요? 그리고 각자 어떤 특징이 있을까요?? 캐시(Cache) 먼저 캐시는 속도가 빠른 장치(CPU)와 느린 장치(메인 메모리) 사이에서 속도 차이에 따른 병목현상을 줄이기 위한 범용 메모리를 뜻합니다. 즉, 어떤 시스템 내에서 데이터의 집중적인 사용으로 인해 전체 시스템에 절대적인 영향을 미치는 부분의 사용 빈도가 늘어나 그 부분의 성능이 저하되어 전체 시스템이 마비되는 현상을 줄이기 위한 것입니다. 캐시는 자주 사용하는 데이터나 값을 복사해 놓는 임시 저장소라고 생각할 수 있는데, 이때 캐시의 접근 시간에 비해 원래 데이터(서버의 균일한 api 데이터 등)를 접근하는 시간이 오.. 2020. 10. 3.
커널 (Kernel) 우리가 항상 운영체제를 공부하다 보면 자주 볼 수 있는 단어가 있다. 바로, '커널(Kernel)' 이다. 뭐만 하면 커널에 의해서 관리된다. 커널에 의해 보호된다. 어쩌구 저쩌구..... 도대체 커널이 뭐길래, 이렇게 자주 언급될까??? 커널이란, 프로세스/메모리/저장장치/입출력 시스템 등을 관리하는 운영체제의 핵심적인 기능을 모아놓은 프로그램이다. 그만큼 운영체제의 핵심이라고 할 수 있으며, 운영체제의 성능은 커널이 좌우하게 된다. 컴퓨터가 부팅하는 순간 커널 코드가 메모리에 올라가고, 다른 프로그램과 다르게 항상 메모리에 상주(Memory Resident)한다. 여기서 잠깐 운영체제를 말하자면, 운영체제는 크게 커널과 인터페이스로 나눌 수 있는데 인터페이스는 커널에 사용자의 명령을 전달하고 실행 결.. 2020. 9. 3.