운영체제 공룡책 14

[운영체제 공룡책] 4장 Threads &Concurrency

4.1 Overview스레드는 스레드 ID, 프로그램 카운터(PC), 레지스터 세트 및 스택으로 구성되는 CPU 활용의 기본 단위이다. 4.1.1 Motivation멀티스레드의 개념대부분의 현대 소프트웨어는 여러 스레드로 구성된 멀티스레드 방식으로 동작.하나의 프로세스 내에서 여러 작업을 병렬로 처리하여 효율성을 높임.  멀티스레드와 멀티코어 시스템:멀티스레드는 멀티코어 CPU에서 병렬 처리를 활용하여 CPU 집약적인 작업을 동시에 수행 가능.데이터 마이닝, 그래픽 처리, 인공지능 등에서 병렬 처리로 성능 향상.멀티스레드의 효율성:단일 스레드 웹 서버의 경우 하나의 클라이언트 요청만 처리 가능 → 대기 시간이 길어짐.전통적인 방식인 프로세스 생성은 리소스와 시간이 많이 소모됨.멀티스레드 방식에서는 클라이..

[운영체제 공룡책] 3장 ProcessManagement

운영체제 공룡책: 3장 Process Management3.1 Process Concept프로세스 정의:실행 중인 프로그램을 의미하며, 프로그램 카운터와 프로세서 레지스터의 상태로 현재 활동이 표현됨. 프로그램과의 차이점:프로그램은 디스크에 저장된 명령어의 집합으로 수동적(entity)이다.프로세스는 실행 중이며 자원을 가진 능동적(entity)이다.3.1.1 The Process프로세스 메모리 구조:텍스트 섹션: 실행 코드 (크기 고정).데이터 섹션: 전역 변수 (크기 고정).스택: 함수 호출 시 매개변수, 반환 주소, 지역 변수를 저장하며 동적으로 변함.힙: 동적 메모리 할당 시 확장 및 축소 가능. 프로세스와 작업(job)의 관계:프로세스는 현대적 용어, 작업(job)은 초기 운영체제의 용어로 역사..

[운영체제 공룡책] 2장 Operating - System Structures

운영체제 공룡책: 2장 Operating - System Structures2.1 Operating-System Services 운영체제(OS)의 주요 서비스사용자 인터페이스 (User interface): 대부분 GUI 형태의 그래픽 사용자 인터페이스를 제공하지만, 일부는 CLI(Command Line Interface) 또는 터치스크린 인터페이스를 사용한다.프로그램 실행(Program execution): 프로그램을 메모리에 적재하고 실행, 종료할 수 있게 한다.입출력 (I/O) 작업: 파일 및 장치에 대한 입출력을 관리하여 효율성과 보호를 제공한다.파일 시스템 관리(File-system manipulation): 파일과 디렉토리의 생성, 삭제, 검색, 읽기/쓰기와 접근 권한 관리 기능을 지원한다.통..

[운영체제 공룡책] 1장 Overview

운영체제 공룡책: 1장 Overview1. 운영체제란?컴퓨터가 하드웨어를 관리하는 프로그램응용프로그램의 토대를 제공해주는 프로그램컴퓨터의 사용자와 컴퓨터 하드웨어 사이에 중간 매체 역할을 해주는 프로그램항상 수행되고 있는 유일한 프로그램만 운영체제이다. 다른 말로 커널(kernel)이라고 한다. 1.1 운영체제의 기능 (What Operating Systems Do) 컴퓨터 시스템의 구성요소하드웨어: 중앙 처리 장치(CPU), 메모리, 입출력(I/O) 장치와 같은 하드웨어는 시스템의 기본 컴퓨팅 리소스를 제공운영체제: 하드웨어를 제어하고 다양한 사용자를 위해 다양한 응용 프로그램 간의 사용을 조정응용프로그램: 워드 프로세서, 스프레드시트, 컴파일러, 웹 브라우저와 같은 응용 프로그램은 이러한 리소스가 사..