Computer Science/운영체제 14

[운영체제] 04. Threads & Concurrency

스레드란 무엇인가?웹 서버를 예시로 들어 설명할게요!웹 서버(Web server)웹 페이지를 제공하는 컴퓨터 프로그램웹 서버는 한 번에 많은 클라이언트를 서비스해야 합니다.웹 서버가 입출력(I/O) 작업을 수행하면?블록될 것입니다.다른 클라이언트의 요청을 처리할 수 없습니다.동시 서비스(concurrent service)를 위해 많은 서버 프로세스가 필요합니다.메모리 공간 낭비.프로세스를 생성하는 동안 delay 발생.스레드(Thread)가 필요합니다.Code, data, and resources를 공유할 수 있습니다.Register values and stacks은 공유할 수 없습니다. ThreadCPU utilization의 기본 단위각 프로세스는 여러 스레드를 포함할 수 있습니다.모든 프로세스의 스..

[운영체제] 03. Process

Process Concept(프로세스 개념)운영 체제는 다양한 프로그램을 실행합니다.배치 시스템 - jobsTime-shared systems(시분할 시스템) - user programs 또는 tasks교재에서는 job과 process라는 용어를 번갈아가면서 사용할 거라고 하네요프로세스실행 중인 프로그램(a program in execution)프로세스는 다음을 포함합니다.프로그램 코드(code), 텍스트 섹션(text section)이라고도 함전역 변수 및 정적 변수를 포함하는 데이터 섹션(data section)임시 데이터를 포함하는 스택(stack)함수 매개변수, 반환 주소, 로컬 변수실행 중 동적으로 할당된 메모리를 포함하는 힙(heap)프로그램 카운터(program counter), 프로세서 레..

[운영체제] 02. Operating System Structures

운영체제 서비스 (Operating System Services)운영체제는 사용자에게 다음과 같은 서비스를 제공사용자 인터페이스(User Interface)명령어 인터페이스 (CLI), 그래픽 사용자 인터페이스 (GUI)프로그램 실행(Program execution)프로그램을 메모리에 로드, 실행, 종료I/O 작업(I/O operation)키보드/마우스 입력, 모니터/프린터 출력파일 시스템 조작(File system manipulation)파일 또는 디렉토리 읽기/쓰기, 생성/삭제/검색 등통신(Communications)프로세스 간 정보 교환오류 검출(Error detection)하드웨어 (메모리 오류, power failure)I/O 장치 (네트워크 연결 실패, 프린터 용지 부족)사용자 프로그램 (산술..

[운영체제] 01. Introduction to Operating System

운영체제 정의컴퓨터 시스템의 네 가지 구성 요소사용자 (Users)애플리케이션 (Applications) (워드 프로세서, 웹 브라우저, 게임, …)운영체제 (Operating System)하드웨어 (Hardware) (CPU, 메모리, I/O 장치)운영체제 정의운영체제 (Operating System)애플리케이션과 컴퓨터 하드웨어 사이의 중개자(intermediary) 역할을 함.컴퓨터 하드웨어 자원을 관리.애플리케이션을 위한 일부 서비스를 제공.사용자 관점 (User View)운영체제가 애플리케이션을 실행.운영체제가 컴퓨터 시스템을 사용하기 편리하게 만듦.시스템 관점 (System View)운영체제는 자원 할당자 (Resource Allocator).하드웨어 자원: CPU, 메모리, I/O 장치.소프..