PowerPoint 프레젠테이션

Similar documents
[ 컴퓨터시스템 ] 3 주차 1 차시. 디렉토리사이의이동 3 주차 1 차시디렉토리사이의이동 학습목표 1. pwd 명령을사용하여현재디렉토리를확인할수있다. 2. cd 명령을사용하여다른디렉토리로이동할수있다. 3. ls 명령을사용하여디렉토리내의파일목록을옵션에따라다양하게확인할수

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

슬라이드 1

Microsoft PowerPoint - ch09_파이프 [호환 모드]

2009년 상반기 사업계획

6주차.key

제1장 Unix란 무엇인가?

Chapter 05. 파일접근권한관리하기

<3032B0AD202D20B8AEB4AABDBA20BCB3C4A12D556E6978C0CEC5CDB3DDBAB8C3E6C7D0BDC02E687770>

경우 1) 80GB( 원본 ) => 2TB( 복사본 ), 원본 80GB 는 MBR 로디스크초기화하고 NTFS 로포맷한경우 복사본 HDD 도 MBR 로디스크초기화되고 80GB 만큼포맷되고나머지영역 (80GB~ 나머지부분 ) 은할당되지않음 으로나온다. A. Window P

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

Microsoft PowerPoint - Lecture_Note_7.ppt [Compatibility Mode]

PowerPoint 프레젠테이션

10.

ABC 11장

<4D F736F F F696E74202D FB8DEB8F0B8AE20B8C5C7CE205BC8A3C8AF20B8F0B5E55D>

리눅스 프로세스 관리

2009년 상반기 사업계획

2009년 상반기 사업계획

시스템 사용자 계정 관리

Microsoft PowerPoint - em8-리눅스설치.ppt

Microsoft Word - windows server 2003 수동설치_non pro support_.doc

<4D F736F F F696E74202D FC7C1B7CEBCBCBDBABFCD20BBE7BFEBC0DA20B8EDB7C920C0CDC8F7B1E22E >

Chap06(Interprocess Communication).PDF

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Mango-IMX6Q mfgtool을 이용한 이미지 Write하기

Microsoft PowerPoint - 02_Linux_Fedora_Core_8_Vmware_Installation [호환 모드]

PowerPoint 프레젠테이션

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

좀비프로세스 2

PowerPoint 프레젠테이션

Microsoft PowerPoint - o8.pptx

슬라이드 1

7장. 교착상태(deadlock)

Microsoft Word - PLC제어응용-2차시.doc

PC 일반 2 컴퓨터기초 컴퓨터정보과권용광 CONTENT 1. PC 의개요 2. PC 의구조 3. 명령처리의과정 2 Section 01 컴퓨터의개요 컴퓨터의 역사 01 v 초기의컴퓨터 컴퓨터의역사 ENIAC EDSAC EDVAC UNIVAC-1 El

제9장 프로세스 제어

네이버블로그 :: 포스트내용 Print VMw are 에서 Linux 설치하기 (Centos 6.3, 리눅스 ) Linux 2013/02/23 22:52 /carrena/ VMware 에서 l

Level 학습 성과 내용 1수준 (이해) 1. 기본적인 Unix 이용법(명령어 또는 tool 활용)을 습득한다. 2. Unix 운영체계 설치을 익힌다. 모듈 학습성과 2수준 (응용) 1. Unix 가상화 및 이중화 개념을 이해한다. 2. 하드디스크의 논리적 구성 능력

Microsoft PowerPoint - StallingsOS6e-Chap03.ppt [호환 모드]

The Pocket Guide to TCP/IP Sockets: C Version

Unix & Linux 개요 Company 서울대학교통계학과 2010년 2학기컴퓨터의개념및실습 ( Thanks to: cancho & facewhite from SPARC/KAIST, Bruce La Plante fro

<4D F736F F F696E74202D FC7C1B7CEBCBCBDBA20BBFDBCBAB0FA20BDC7C7E0205BC8A3C8AF20B8F0B5E55D>

2009년 상반기 사업계획

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

Microsoft Word _LT_리눅스 마운트강좌 mount 1편.doc

금오공대 컴퓨터공학전공 강의자료

Adobe Flash 취약점 분석 (CVE )

슬라이드 1

Microsoft PowerPoint - 알고리즘_1주차_2차시.pptx

Microsoft PowerPoint - o3.pptx

<4D F736F F F696E74202D206D61696E D F6E D20C7D8C5B720BDC3BDBAC5DB20C0FCC1A620C1B6B0C7202D20B3D7C6AEBFF6C5A920C0CEC5CDC6E4C0CCBDBA20C4ABB5E520BCB3C1A4>

Microsoft PowerPoint - StallingsOS6e-Chap06.ppt [호환 모드]

PowerPoint 프레젠테이션

Table of Contents 1. 분석 유포경로 악성파일분석 드롭퍼 A 분석 드롭퍼 B 분석 페이지 2 / 17

사용자수준의스레드 : 사용자의라이브러리에의해운영, 속도는빠르나, 구현이복잡하다. 커널수준의스레드 : 운영체제커널에의해운영, 속도는느리나, 구현이단순하다. 스케줄링 (Scheduling) 1) 스케줄링의정의 프로세스가생성되어실행될때필요한시스템의여러자원을해당프로세스에게할당

System Programming 리눅스시스템 프로그래밍 김정국지음 System Programming

망고100 보드로 놀아보자-4

Microsoft PowerPoint - Lecture_Note_5.ppt [Compatibility Mode]

USB 케이블만을이용한리눅스 NFS 개발환경 (VirtualBox) 최초작성 : 2010 년 10 월 21 일 작성자 : 김정현 수정내용 최초작성 by 김정현 스크립트추가, 설명보충 by 유형목 1. VritualBox

임베디드시스템설계강의자료 6 system call 1/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

슬라이드 1

4. SELinux 상태확인 ( 상세 ) # sestatus v SELinux status: enabled SELinuxfs mount: /selinux Current mode: enforcing Mode from config file: enforcing Policy

H3250_Wi-Fi_E.book

슬라이드 1

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

PowerPoint 프레젠테이션

고객 카드

아이콘의 정의 본 사용자 설명서에서는 다음 아이콘을 사용합니다. 참고 참고는 발생할 수 있는 상황에 대처하는 방법을 알려 주거나 다른 기능과 함께 작동하는 방법에 대한 요령을 제공합니다. 상표 Brother 로고는 Brother Industries, Ltd.의 등록 상

Chapter #01 Subject

Microsoft PowerPoint - 알고리즘_5주차_1차시.pptx

쉽게 풀어쓴 C 프로그래밍

2) 활동하기 활동개요 활동과정 [ 예제 10-1]main.xml 1 <LinearLayout xmlns:android=" 2 xmlns:tools="

PowerPoint 프레젠테이션

Microsoft PowerPoint - ch07.ppt

IP 심화 라우팅프로토콜적용시 라우팅테이블에서 이니셜이있는네트워크를설정하는것 : onnected 직접연결된네트워크를의미한다. 그러므로라우팅은 나는이런네트워크와연결되어있다. 를직접연결된라우터들에게알려주는것 1>en 1#conf t 1(config)#router rip 1

사용예 mount t msdos /dev/hda2 /mnt/msdos mount t vfat /dev/hda3 /mnt/win98 mount t ntfs /dev/hda4 /mnt/win2000 mount t ext2 /dev/hda5 /mnt/inux umount 명

슬라이드 1

[Brochure] KOR_TunA

Chap 5 루트파일시스템 (Root F/S)

문서의 제목 나눔고딕B, 54pt

놀이동산미아찾기시스템

Raspbian 설치 라즈비안 OS (Raspbian OS) 라즈베리파이 3 Model B USB 마우스 USB 키보드 마이크로 SD 카드 마이크로 SD 카드리더기 HDM I 케이블모니터

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

PowerPoint 프레젠테이션

Index

* 자원복구 * - 이동형저장장치오류 : 장치를찾을수없습니다. 포맷하세요.. 복구방법 : 1) 포맷진행 - 빠른포맷 2) 데이터복구프로그램을이용하여복구국내 : finaldata - 파티션복구 : Acronis Disk Directory Suit - 데이터복구 : R-s

11장 포인터

1장. 유닉스 시스템 프로그래밍 개요


1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

Microsoft PowerPoint - 06-CompSys-11-System.ppt

03_queue

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

MySQL-Ch10

작성자 : saint Overview BackTrack 는 LILO 를부트로더로사용한다. BactTrack 을기본환경설정그대로설치하면부팅할수없는경우가있는데, 이것은실린더크기가 1024 보다큰하드디스크에설치하면 LILO 가 OS 를정상적으로읽어올수없기때문이다. 요즘나오는

Microsoft Word - NAT_1_.doc

Transcription:

UNIX 및실습 14 장. 유닉스내부구조 1

학습목표 유닉스커널의기능과구조를이해한다. 파일시스템의내부구조를이해하고, inode 가무엇인지배운다. 프로세스가어떻게동작하는지이해한다. 메모리가사용되는방식을이해한다. 프로세스간통신방식에는어떤것이있는지이해한다. 입출력장치는어떻게동작하는지이해한다. 2

Section 01 유닉스커널의구조 커널의정의 프로세스관리와메모리관리, 입출력관리, 파일시스템관리등과같이운영체제가수행하는핵심적인기능을수행 커널의기능 항상메모리에상주하면서시스템을관리 사용자와하드웨어사이를연결 모든운영체제는각자독특한커널구조를가지고서비스를제공 3

커널의구성요소 4

Section 02 파일시스템이란 파일시스템이란 파일을저장하기위한공간을할당하고, 파일에대한접근을제어하는등파일을관리하는기능을담당 유닉스시스템은파일이나디렉토리를주로하드디스크장치에저장하게되는데, 한시스템에하나이상의디스크장치를설치 파티션 하드디스크는관리의편리를위해보통몇개의파티션으로분할해사용 각파티션에는하나의파일시스템이구성 커널은디스크단위가아닌파티션별로장치번호를붙여서관리 5

디스크구조 [1/2] 하드디스크의물리적인구조 여러장의플래터 ( 디스크 ) 와읽기 / 쓰기헤드로구성 하드디스크의논리적인구조 트랙과섹터로구성 각플래터의같은위치에있는트랙들을실린더라고부름 실린더 섹터 트랙 6

디스크구조 [2/2] 디스크접근방법 블록단위접근 블록은일반적으로 8KB 블록단위로읽고, 쓰기실행 일반적으로디스크를읽거나쓸때블록단위로접근 문자단위접근 섹터단위로읽고, 쓰기실행 섹터의기본크기는 512 바이트 Raw Device 라고도함 파일시스템을검사할때문자단위로접근 디스크레이블 디스크의파티션정보 보통 0 번트랙, 0 번섹터에저장 레이블이깨지면디스크를읽을수없음 7

파티션 파티션과파일시스템 [1/2] 하드디스크를보다작은단위로나누어사용할때이용하는작은단위 유닉스에서하드디스크는 8 개의파티션으로나누고각파티션별로번호를붙여사용 디스크를파티션으로나누는작업은유닉스를설치할때수행 파티션은윈도우의 C, D 드라이브같이각각독립적인드라이브처럼사용 솔라리스에서는 8 개까지파티션을나눌수있음 8

파티션과파일시스템 [2/2] 솔라리스의파티션과파일시스템 파티션파일시스템기능 0 / (root) 시스템부팅과환경설정에필요한파일과디렉토리및다른파일시스템을연결하는디렉토리를가지고있는파티션 1 Swap 가상메모리에필요한임시메모리공간으로사용되는파티션 2 전체전체디스크를나타내는파티션 3 usr 사용자명령과각종유틸리티를가지고있는파티션 4 5 6 7 분할가능한파티션들 솔라리스설치시각파티션에적절한파일시스템을생성보통사용자홈디렉토리를위한파티션 (/export/home), 부가적인소프트웨어를설치하는파티션 (/opt, /usr/local 등 ) 등을설치 9

파일시스템구조 [1/4] 10

파일시스템구조 [2/4] 부트블록 파일시스템의 1 번섹터부터 15 번섹터까지의 15 개섹터에위치 부팅시유닉스를초기화하기위한부트스트랩코드를가지고있음 유닉스커널이설치된루트파일시스템은부트블록에실제부트스트랩코드를가지고있으나나머지파일시스템은처음 15 개섹터를비워두고있음 기본수퍼블록 부트블록다음의 16 개섹터는기본수퍼블록 수퍼블록은해당파일시스템에대한모든정보를가지고있음 데이터블록의수, 실린더그룹의수, 데이터블록의크기, 하드웨어정보, 파일시스템을마운트할디렉토리위치, 파일시스템의상태정보등이수퍼블록에저장 11

파일시스템구조 [3/4] 실린더그룹 파일시스템을구성하는실린더들은관리의편의를위해다시그룹으로나누어놓은것 한개의실린더그룹은보통 16~256 개의실린더로구성 각실린더그룹은백업수퍼블록, 실린더그룹블록, inode 테이블, 데이터블록으로구성 백업수퍼블록 각실린더그룹의처음 16 섹터는기본수퍼블록을복사한백업수퍼블록을저장 기본수퍼블록이깨졌을경우백업수퍼블록중하나를이용해다시복구가능 실린더그룹블록 백업수퍼블록다음에는실린더그룹블록이위치 해당실린더그룹이관리하는 inode 의총개수, 데이터블록의총개수, 디렉토리의개수, 사용가능한블록수, 사용가능한 inode 수가저장 12

inode 테이블 파일시스템구조 [4/4] 파일이나디렉토리를관리하기위한 inode 들이저장 inode 는파일마다할당되며파일의소유자, 수정날짜, 크기, 데이터블록의위치등의정보를저장 데이터블록 실제파일의내용이저장되는곳 유닉스에서데이터블록의기본크기는 8KB 필요시 1KB 단위로나누어서파일에할당도가능 단편화 (Fragmentation) 13

파일의내부표현 inode [1/2] 파일의내부적표현 index node( 색인노드 ) 파일의소유자, 파일의접근허가, 파일크기, 파일수정시간, 파일접근시간, 데이터블록의위치, 하드링크수등의정보를저장 유닉스에서파일이름은하나의 inode 로연결 같은 inode 와연결된파일이름은여러개가있을수있으며, 같은 inode 에연결된파일이름을링크라고함 14

파일의내부표현 inode [2/2] 유닉스에서만들수있는최대파일크기 96KB + 16,384KB(8KB * 2048 개 ) + 33,554,432KB(8KB * 2048 개 * 2048 개 ) + 68,719,476,736KB (8KB * 2048 개 * 2048 개 * 2048 개 ) = 약 64TB 15

Section 03 프로세스관리 프로세스는실행중인프로그램 커널은 CPU 의작업순서를적절히스케줄링하여프로세스를처리함으로써여러개의프로세스가동시에수행되는것처럼나타남 프로세스의구조 16

프로세스구조 텍스트영역 실행코드가저장되며, 프로세스실행중크기가변하지않는고정영역 데이터영역 프로그램에서정의된전역변수가고정영역에할당 힙 (Heap) 영역 프로그램의실행중에동적으로메모리를요청하는경우에할당되는영역으로가변영역 스택영역 빈공간 프로그램에서정의된지역변수를위한가변영역 가변영역을위한빈메모리영역 17

프로세스의상태와전이 1) 프로세스가실행되면일단사용자모드에서수행된다. 2) 사용자모드에서시스템호출을하면커널모드로전환되어커널모드에서수행된다. 3) 커널모드에서수행중입출력완료를기다릴때와같이더이상수행을계속할수없을때수면상태로전환된다. 4) 수면중이던프로세스가깨어나수행대기상태로전환되어스케줄링이되면바로실행될수있도록준비한다. 18

프로세스의생성 프로세스번호 (PID) 유닉스에서실행중인프로세스에할당되는번호 프로세스의생성 0 번프로세스 : 부팅시자동으로생성 1 번프로세스 : 0 번프로세스가생성, init 프로세스, 나머지모든프로세스의조상 프로세스생성과정 부모프로세스가 fork 시스템호출로자식프로세스생성 exec 시스템호출로자식프로세스에서다른프로그램을실행 19

특별한프로세스 고아프로세스 자식프로세스가돌아오기를기다리지않고부모프로세스가종료할경우이자식프로세스들이고아프로세스 고아프로세스들은모두 1 번프로세스의자식프로세스로등록되어실행을마치고정상적으로종료 좀비프로세스 이미사용중인모든자원을반납했지만부모프로세스로부터승인을받지못한상태의프로세스 좀비프로세스들은실제로실행되고있지는않은프로세스이지만동작중인프로세스테이블목록을차지하고있음 프로세스목록에 defunct 프로세스라고나오기도함 일반적인방법으로는없앨수가없음 20

Section 04 메모리관리 [1/3] 가상메모리 기존메모리와하드디스크공간의일부를합하여사용하는기법 수면상태이거나대기상태인프로세스들을하드디스크에저장했다가실행할순서가되면다시메모리로읽어들이면 CPU 에서실행중인프로세스에충분한메모리를제공가능 커널의메모리관리시스템은가상메모리의동작을관리 스와핑 가상메모리로사용되는하드디스크장치를스왑장치 프로세스를스왑장치에기록했다가, 다시읽어오는동작을스와핑 (Swapping) 스왑아웃 (swap Out) : 스왑장치로프로세스를이동 스왑인 (swap in) : 다시메모리로읽어드리는것 21

메모리관리 [2/3] 가상메모리와스와핑 22

메모리관리 [3/3] 요구페이징 (Demand Paging) BSD4.0 유닉스에서도입 프로세스를페이지라는단위로나누어관리 실행에필요한페이지만메모리에두고, 나머지페이지는스왑장치에두었다가요구가있으면해당페이지를메모리로읽어들이는기법 요구페이징을사용하면프로세스를페이지로나누어스와핑을하므로프로세스의크기에제약을받지않아도되는장점이있음 23

Section 05 프로세스간통신 [1/3] 프로세스간통신 IPC (InterProcess Communication) 프로세스간에정보를주고받는것 한시스템내에서의 IPC 파이프 (pipe) 두프로세스간에한쪽방향으로통신을할수있도록지원 쉘에서 기호는파이프를의미 pipe 시스템호출로구현이가능 파이프에이름이붙지않은언네임드파이프 (Unamed Pipe) 와이름이붙어있는네임드파이프 (Named Pipe) 로구분 네임드파이프는 FIFO라고도부름 fork() 부모프로세스 쓰기 pipe() 파이프 24 자식프로세스 읽기

프로세스간통신 [2/3] 한시스템내에서의 IPC ( 계속 ) 시스템 V IPC telnet hanbitbook.co.kr 메시지큐, 공유메모리, 세마포어 메시지큐 : 프로세스들사이에메시지를주고받는기능을지원 공유메모리 : 프로세스들이메모리를공유하고이를통해통신하는기능을지원 세마포어 : 메모리에접근하는프로세스들의동기화를지원 ipcs 명령으로시스템 V IPC 확인가능 $ ipcs IPC status from <running system> as of 2006 년 4 월 18 일화요일오후 02 시 38 분 01 초 Message Queue facility inactive. T ID KEY MODE OWNER GROUP Shared Memory: m 0 0x50038969 --rw-r--r-- root root Semaphores: $ 25 세마포어 공유메모리 메시지큐

프로세스간통신 [3/3] 네트워크를이용한통신 TCP/IP 프로토콜이용 소켓인터페이스제공 응용프로그램 소켓 응용프로그램 소켓 TCP/UDP TCP/UDP IP IP 네트워크 26

Section 06 입출력장치관리 [1/3] 프로세스와디스크, 테이프장치, 터미널, 프린터, 랜카드같은주변장치와통신을할수있도록지원 장치를제어하는커널의모듈을장치드라이버 사용하는장치의종류에따라모두가지고있어야함 특수파일 장치를파일로취급하는데이를특수파일이라고함 장치들도일반파일처럼파일명을가지고있음 솔라리스의경우하드디스크장치명은 c0t0d0s0 와같은형태를사용 27

입출력장치관리 [2/3] 블록장치 디스크와테이프같은장치 블록단위 (8KB) 로읽고씀 문자장치 터미널같이블록장치가아닌다른장치 블록장치들도문자장치인터페이스를가질수있음 디스크를읽고쓸때블록단위로읽고쓰는것도가능하고, 문자단위로읽고쓰는것도가능 솔라리스의경우 디스크의블록장치특수파일명과문자장치특수파일명을같은이름을쓰고대신디렉토리를구분해저장 c0t0d0s0 로같더라도 /dev/dsk 디렉토리에위치한것은블록장치를가리키고, /dev/rdsk 디렉토리에위치한것은문자장치를가리킴 rdsk 에서 r 은 raw 의약자로문자장치를의미 28

블록장치 입출력장치관리 [3/3] telnet hanbitbook.co.kr $ ls -ld /dev/dsk 총 0 0 brw-r----- 1 root sys 32, 24 2002 년 12 월 26 일 c0t0d0s0 0 brw-r----- 1 root sys 32, 25 2002 년 12 월 26 일 c0t0d0s1 0 brw-r----- 1 root sys 32, 26 2002 년 12 월 26 일 c0t0d0s2... telnet hanbitbook.co.kr $ ls -ld /dev/rdsk 총 0 0 crw-r----- 1 root sys 32, 24 2002년 12월 26일 c0t0d0s0 0 crw-r----- 1 root sys 32, 25 2002년 12월 26일 c0t0d0s1 0 crw-r----- 1 root sys 32, 26 2002년 12월 26일 c0t0d0s2... 문자장치 29