인천대학교 컴퓨터공학과 성미영 1.4.1 Chapter 1.4 서론 ( 핵심 )  1.1 OS 정의  1.2 컴퓨터 시스템 구조 (Architecture)  1.3 컴퓨터 시스템 동작 (Operations)  1.4 OS 핵심 프로세스 관리 (Process Management)

Slides:



Advertisements
Similar presentations
Embedded System 2009 년 11 월 16 일 Embedded Computer1 ● Hardware 와 Software 가 조합되어 특정한 복적을 수행하는 시스템 ● 특정한 기능을 수행하도록 Micro Processor 와 I/O Device 를 내장하며,
Advertisements

1 08 시스템 구성도 고려사항 * 웹 서버 클러스터 구성  클러스터 구축은 ㈜ 클루닉스의 Encluster 로 구축 (KT 인증,IT 인증 획득, 실제 클러스터 구축 사이트 200 여곳 )  웹 서버 클러스터는 Dynamic, Static, Image.
Big Data & Hadoop. 1. Data Type by Sectors Expected Value using Big Data.
I. 프로젝트 동기 II. 프로젝트 목표 III. 파일시스템 IV. 암호화 및 복호화 V. 인터페이스 VI. FBR READ/WRITE VII. 프로그램 흐름도 VIII. 미 구현 사항 IX. 프로젝트 기대효과 X. 프로그램 요구사항 및 팀원 역할분담 XI. 시연 XII.
Flash SSD 강원대학교 `01 최경집.
컴퓨터는 어떻게 동작?.
컴퓨터와 인터넷.
Linux Seminar Cahpter 10. Linux File System
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
Windows Server 장. Windows Server 2008 개요.
Windows Server 장. 사고를 대비한 데이터 백업.
임베디드 시스템.
5장 Mysql 데이터베이스 한빛미디어(주).
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
강 명 수 LINUX 설치 강 명 수
07. 디바이스 드라이버의 초기화와 종료 김진홍
Root Filesystem Porting
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
Root Filesystem Porting
컴퓨터정보공학부 서버 안내 [ IBM x3500 ] it.sangji.ac.kr ict.sangji.ac.kr 혹은
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
WinCE Device Driver 실습 #2
뇌를 자극하는 Windows Server 장. Windows Server 2008 개요.
제 3 장 Memory - SRAM.
6장 운영체제 6.1 운영체제란? 6.2 운영체제의 형태와 역사 6.3 운영체제의 구성 요소 6.4 커널과 프로세스
4. LAN의 배선체계 (3장. LAN: Local Area Network)
Sungkyunkwan University OS Project Dongkun Shin
Chapter 10. 파일 시스템 인터페이스(File System Interface)
TCP/IP Socket Programming…
5장 Mysql 데이터베이스 한빛미디어(주).
03. 병행 프로세스 (Parallel Process)
자바 5.0 프로그래밍.
디지털회로설계 (15주차) 17. 시프트 레지스터와 카운터 18. 멀티바이브레이터 * RAM & ROM.
디 지 털 공 학 한국폴리텍V대학.
Cache Manager Yonghyun Kim Microsoft MVP Dev 5 team leader, ESTsoft
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
리눅스 시스템 & 커널 기초 P.46 – P.53 이름: nsh009 학번: 112 1/20.
Device Driver 임베디드 시스템 I.
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
뇌를 자극하는 Windows Server 2012 R2
24장. 파일 입출력.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
제 1 장 운영 체제의 개요 Section 1 운영 체제의 개념 Section 2 운영 체제의 구성과 기능
논리회로 설계 및 실험 5주차.
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
컴퓨터 시스템 하드웨어 컴퓨터 시스템 소프트웨어 C P U Control Unit 입 력 장 치 출 력 장 치 ALU
Chapter 12 Memory Organization
ARM Development Suite v1.2
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
UNIT 25 SPI 로봇 SW 교육원 조용수.
Lecture #6 제5장 기억장치 (1).
ATmega128의 특징 아이티즌 기술연구소
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
뇌를 자극하는 Solaris bible.
AT MEGA 128 기초와 응용 I 기본적인 구조.
UNIT 25 SPI 로봇 SW 교육원 조용수.
논리회로 설계 및 실험 4주차.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
학습내용 프로토콜 계층화 OSI 모델의 용어 및 기능 개체 서비스 접근점 (N) 프로토콜과 (N) 서비스 서비스 프리미티브
발표자 : 이지연 Programming Systems Lab.
운영체제 (Operating Systems)
System Security Operating System.
과제 4: Thread (5월 9일까지) 4장 연습문제 풀이
Installation Guide.
06. 디바이스의 등록과 해제 김진홍
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
임시테이블과 테이블변수 SQLWorld Study Group - 최명환 -.
교착 상태 해결 : 교착 상태 탐지 교착 상태 탐지(Deadlock Detection)
6 객체.
1. 실습 시간에 수행한 avd 생성 및 실행, adb shell 접속 및 명령어 수행 결과를 제출한다.
Presentation transcript:

인천대학교 컴퓨터공학과 성미영 Chapter 1.4 서론 ( 핵심 )  1.1 OS 정의  1.2 컴퓨터 시스템 구조 (Architecture)  1.3 컴퓨터 시스템 동작 (Operations)  1.4 OS 핵심 프로세스 관리 (Process Management) 메모리 관리 (Memory Management) 저장장치 관리 (Storage Management) 보호와 보안 (Protection and Security)  1.5 컴퓨팅 환경

인천대학교 컴퓨터공학과 성미영 프로세스 관리 (Process Management)  Process(active entity ) 는 실행 중인 Program(passive entity): 작업의 단위  Process 는 작업 수행 위해 자원을 필요로 함 : CPU, memory, I/O, files, data  Process 는 종료되면 재사용 가능한 자원을 반환  Single-threaded process 는 실행할 다음 명령 (instruction) 의 위치를 가리키는 program counter(PC) 를 한 개 가짐  Multi-threaded process 는 thread 마다 하나의 program counter(PC) 가짐  일반적으로 시스템에는 하나 또는 다수의 CPU 상에서 다수의 process 들 (user processes, OS processes) 이 동시에 실행됨 CPU 다중화 (multiplexing) 로 process/thread 동시성 (concurrency) 유지  OS 의 프로세스 관리 활동 사용자 프로세스와 시스템 프로세스의 생성과 삭제 프로세스의 일시 중지와 재수행 프로세스 동기화를 위한 기법 제공 프로세스 통신을 위한 기법 제공 교착상태 처리를 위한 기법 제공 운영체제

인천대학교 컴퓨터공학과 성미영 메모리 관리 (Memory Management)  모든 data 는 processing 되기 전후에 memory 에 존재해야 함 존 폰 노이만 (Jon Von Neumann) 프로그램 내장 (stored program) 방식  Memory 에 있는 모든 instructions 들은 순서대로 실행됨  메모리 관리는 메모리에 있어야 할 것을 결정하는 작업임 CPU 활용과 사용자 응답을 최적화 할 수 있도록  OS 의 메모리 관리 활동 메모리의 어느 부분이 현재 사용되고 있으며 누구에 의해 사용되고 있는지를 추적 어떤 프로세스 ( 또는 그 일부 ) 들을 메모리에 적재하고 제거할 것인가를 결정 필요에 따라 메모리 공간을 할당 (allocating) 하고 회수 (deallocating)

인천대학교 컴퓨터공학과 성미영 파일 시스템 관리 (File System Management)  OS 는 저장된 정보에 대해 일관성 있고 논리적인 관점을 제공 저장장치의 물리적 특성을 논리적인 저장단위로 추상화 - file 각 매체 (i.e., magnetic disk, optical disk) 는 전용 장치 드라이브 (i.e., disk drive, tape drive) 에 의해 제어됨  속성 : 접근속도 (access speed), 용량 (capacity), 전송률 (data- transfer rate), 접근방식 (access method; sequential or random)  OS 의 파일 시스템 관리 파일은 통상 디렉토리로 구성 다수 사용자가 파일에 접근할 때는 누구에 의해, 어떤 방법으로 접근될 수 있는지의 제어가 바람직 파일 관리 활동  파일과 디렉토리 생성 및 제거  파일과 디렉토리 조작을 위한 프리미티브 제공  파일을 보조 저장장치로 사상  안전한 (non-volatile) 저장장치에 백업

인천대학교 컴퓨터공학과 성미영 대용량 저장장치 관리 (Storage Management)  Disk 는 메모리에 담을 수 없는 data 를 영구적으로 저장  Disk subsystem 과 관련 algorithm 들이 시스템 전체의 속도에 영향을 줌  OS 의 대용량 저장장치 관리 활동 자유공간 (free-space) 관리 저장장치 할당 디스크 스케줄링  3 차 저장장치 (tertiary storage) optical storage(CD, DVD), magnetic tape WORM (write-once, read-many-times), RW (read-write) 형식 등 다양 백업용, 시스템 성능에 영향을 주지 않으나 여전히 OS 의 관리 필요 (mount, umount, allocation, deallocation, etc.)

인천대학교 컴퓨터공학과 성미영 운영체제 캐싱 (Caching)  컴퓨터 시스템의 어러 계층에서 수행되는 중요 개념 ( 하드웨어, OS, 소프트웨어 )  사용 가능성이 많은 자료를 느린 저장장치로부터 빠른 임시 저장장소 (cache) 로 복사 ( 예 ) index register(a high-speedcache for main memory) ( 예 ) main memory(a last cache for secondary storage)  빠른 저장장소 (cache) 에 정보가 존재하는지 검사 있으면, 즉시 cache(fast) 에서 정보 사용 없으면, memory access 하여 cache(fast) 로 정보 복사 후 사용  cache 는 캐시해오는 저장장소보다 크기가 작음 캐시 관리는 중요한 설계 문제 캐시 사이즈와 교체 정책 (replacement policy) 이 중요  응집성과 일관성 (Coherency and Consistency) multitasking: variable copy 들의 coherency 문제 multiprocessor: local cache 들의 coherency 문제 distributed system 에서의 coherency 문제 : file copy 들 + local cache 들의 coherency 문제

인천대학교 컴퓨터공학과 성미영 저장장치 계층 ( Storage-Device Hierarchy) 운영체제 SSD: Solid State Disk ( 순수 전자식, non-volatile flash memory) Hard Disk ( 기계식 + 전자기식, non-volatile) 속도 (speed) 비용 (cost) 휘발성 (volatility) DRAM : Dynamic Random Access Memory ( 순수 전자식, volatile)

인천대학교 컴퓨터공학과 성미영 운영체제 저장장치의 성능 CMOS: complementary metal oxide semiconductor SRAM: static random access memory DRAM: dynamic random access memory

인천대학교 컴퓨터공학과 성미영 운영체제 Integer A 의 Disk 에서 Register 로의 이동 A=5 (process1) A++ (process2) A--  Multitasking 환경에서는 process 들이 가장 최신의 데이터를 사용할 수 있게 해야 함  데이터의 여러 복사본이 실행 중인 여러 task(process) 의 register 에 존재할 수 있음

인천대학교 컴퓨터공학과 성미영 운영체제 Integer A 의 Disk 에서 Register 로의 이동  Multiprocessor 환경에서는 CPU 가 최신의 cache 데이터를 사용할 수 있도록 캐시 일관성 (cache coherency) 을 제공해야 함 데이터의 여러 복사본이 여러 processor 의 local cache 에 존재할 수 있음 A=5 (process1) A++ (process2) A-- A=5 (process1) A++ (process2) A--

인천대학교 컴퓨터공학과 성미영 운영체제 Integer A 의 Disk 에서 Register 로의 이동  Distributed 환경에서는 일관성 (coherency) 문제가 더욱 더 복잡해짐 (17 장 참조 ) 파일의 복사본이 여러 컴퓨터에 존재할 수 있음 데이터의 여러 복사본이 각 컴퓨터의 local cache 에도 존재할 수 있음 바로 쓰기 (write-through), 나중에 쓰기 (write-back,=delayed-write) 등 cache update 정책 client-initiated, server-initiated 등 캐시 유효성 검증 (cache validity) 방법들 A=5 (process1) A++ (process2) A-- A=5 (process1) A++ (process2) A-- A=5 (process1) A++ (process2) A-- A=5

인천대학교 컴퓨터공학과 성미영 입출력 시스템 (I/O Systems)  OS 의 목적 중 하나는 사용자로부터 특정 하드웨어 장치의 특성을 숨기는 것  I/O subsystem 구성 buffering( 전송되는 데이터를 일시적으로 저장 ), caching( 성능을 위해 데이터의 일부를 빠른 기억장치에 저장 ), spooling( 한 작업의 출력을 다른 작업의 입력과 중복 ) 을 포함한 메모리 관리 구성 요소 일반적인 장치 드라이버 인터페이스 특정 하드웨어 장치들을 위한 드라이버  그림 (I/O 수행을 위한 시스템 호출의 사용 ) 참조

인천대학교 컴퓨터공학과 성미영 I/O 수행을 위한 시스템 호출의 사용 운영체제

인천대학교 컴퓨터공학과 성미영 보호와 보안 (Protection and Security)  Protection – 컴퓨터 시스템의 시스템 자원 (resource) 에 대해 프로세스 또는 사용자의 접근을 제어하는 기법  Security – 컴퓨터 시스템의 시스템 접근 (access) 에 대한 내부공격 ( 부적절한 접근 ) 또는 외부공격 ( 인증정보의 도난 ) 을 방어 ( 예 ) 서비스 거부 (denial-of-service), 웜 (worms), 바이러스 (viruses), 식별자 도용 (identity theft), 서비스 도용 (theft of service)  시스템은 우선 사용자를 식별하고 나서, 누가 무슨 일을 할 수 있는지 결정 사용자 식별자 (user IDs, security IDs) 는 이름과 연관된 번호를 포함하며 사용자마다 할당 접근제어를 위해 user ID 는 그 사용자의 모든 파일과 프로세스에 연관되어 접근 제어 그룹 식별자 (group ID) 는 사용자 그룹을 정의하며 파일과 프로세스에 연관되어 접근 제어 유효 사용자 식별자 (effective user ID) 를 이용하여 권한 확대 (privilege escalation)

인천대학교 컴퓨터공학과 성미영 (9 th new) 커널 자료 구조 (Kernel Data Structures)  커널 기본 자료 구조 : 배열, 리스트, 스택, 큐,  Singly linked list  Doubly linked list  Circular linked list

인천대학교 컴퓨터공학과 성미영 (9 th new) 커널 자료 구조 (Kernel Data Structures) Binary search tree left <= right –Search performance is O(n) –Balanced binary search tree is O(log n)

인천대학교 컴퓨터공학과 성미영 (9 th new) 커널 자료 구조 (Kernel Data Structures) Hash function can create a hash map Bitmap – string of n binary digits representing the status of n items Linux data structures defined in include files,,