🖥️ CS/운영체제

    [운영체제] 프로세스와 스레드

    🔎 [10분 테코톡] 코다의 Process vs Thread을 기반으로 작성하였습니다. 프로세스와 스레드를 공부하다 보면 헷갈릴 수 있는, 혼동하기 쉬운 용어들이 있다. 따라서 들어가기 앞서, 키워드를 먼저 정리하려고 한다. 키워드 실행 단위 : cpu core에서 실행하는 하나의 단위로, 프로세스와 스레드를 포괄하는 개념 (부연 설명이 없는) 프로세스 : 하나의 스레드만 가지고 있는 단일 스레드 프로세스 동시성 : 한 순간에 여러가지 일이 아니라, 짧은 전환으로 여러가지 일을 동시에 처리하는 것처럼 보이는 것 프로그램과 프로세스 모두가 좋아하는 음식인 피자를 예로 들어보자. 피자를 먹고 싶어서 피자 가게에 갔는데, 피자가 아닌 피자 레시피를 받는다면 어떨까?? 종이에 적힌 레시피는 피자일 수가 없다. ..

    [운영체제] 가상 메모리(Virtual Memory)와 메모리 관리 : 메모리, 스와핑, 단편화

    📌 Index 메모리 주기억장치와 보조기억장치 메모리 관리 ✔️ 메모리 메인 메모리(Main Memory, Physical Memory, 주기억장치) CPU가 직접 접근할 수 있는 기억 장치로, 프로세스가 실행되려면 프로그램 코드를 메인 메모리에 적재해두어야 한다. 그러나 만약 프로그램 용량이 메인 메모리 보다 크다면, 어떻게 될까? 가상 메모리(Virtual Memory) 가상 메모리(Virtual Memory)는 물리적 메모리 크기의 한계를 극복하기 위해 나온 기술이다. 즉, 물리 메모리보다 큰 프로세스를 수행하기 위해 가상 메모리를 사용한다. 예를 들어, 100MB 메모리 크기에서 200MB 크기의 프로세스를 수행할 수 있도록 하는 것이다. 필요한 부분만 메모리에 적재하고, 프로세스를 실행 시 실행..

    [운영체제] 메모리 계층 구조(Memory Hierachy)

    📌Index 메모리 계층 구조란? 메모리 계층 구조의 필요성 ✔️ 메모리 계층 구조란? 메모리 계층 구조(Memory Hierachy)는 메모리 관련 3가지 주요 특성인 용량, 접근 속도, 비용간의 절충 관계를 파악해 필요에 따라 채택할 수 있게 나타낸 구조이다. 메모리 계층은 레지스터, 캐시, 메모리(RAM), 하드디스크(저장장치)로 구성되어 있다. 그림 상에서 위로 갈수록 속도가 빠르고, 아래로 갈수록 용량이 커진다. 용량이 클 수록 범위가 넓어지므로, 속도가 느려지는 것은 당연하다고 할 수 있다. 레지스터 : CPU 내부의 작은 메모리로, 휘발성이며 속도가 가장 빠르고, 기억 용량이 가장 적다. 캐시 : L1, L2, L3 캐시를 지칭하고 휘발성이며, 속도가 빠르나 기억 용량이 적다. 주기억장치(메..

    [운영체제] 컴퓨터 시스템 구조와 인터럽트

    📌 Index 컴퓨터 시스템 구조 입출력(I/O)의 수행 인터럽트(Interrupt) ✔️ 컴퓨터 시스템 구조(System Structure) 컴퓨터 시스템의 구조는 CPU, Memory, Device Controller, DMA Controller, Timer로 이루어져있다. 컴퓨터 내부 장치인 CPU와 메모리, 그리고 컴퓨터 외부 장치(입출력 장치)인 디스크, 키보드, 마우스, 모니터, 네트워크 장치 등으로 구분된다. 컴퓨터는 외부 장치에서 내부 장치로 데이터를 읽어와 (input) 각종 연산을 수행한 후, 그 결과를 외부 장치로 내보내는(output) 방식으로 업무를 처리한다. CPU CPU는 매 클럭(Clock Cycle) 마다 메모리에서 명령(Instruction)을 하나 씩 읽어와 실행시키는 ..

    [운영체제] 운영체제(Operating System)이란?

    📌 Index 운영체제의 정의 운영체제의 구조 운영체제의 역할 ✔️ 운영체제의 정의 운영체제(Operating System)란, 컴퓨터 하드웨어 바로 윗 단에 설치되는 소프트웨어로, 사용자 및 다른 소프트웨어와 하드웨어를 연결한다. 운영체제 자체도 하나의 소프트웨어로서 전원이 켜짐과 동시에 메모리에 올라간다. 그러나 운영체제와 같이 규모가 큰 프로그램이 모두 메모리에 올라간다면 한정된 메모리 공간의 낭비가 심할 것이고, 따라서 운영체제 중 항상 필요한 부분만을 전원이 켜짐과 동시에 메모리에 올려 놓는다. 그렇지 않은 부분은 필요할 때 메모리에 올려서 사용하게 된다. 이때 메모리에 상주하는 운영체제의 부븐을 커널(kernel)이라고 부르며, 운영체제의 핵심 부분이라고 할 수 있다. ✔️ 운영체제의 구조 컴..

728x90