Uix & Liux 개요 Compay Logo @ 서울대학교통계학과 2010년 2학기컴퓨터의개념및실습 (http://dcom10.ez.ro/) Thaks to: cacho & facewhite from SPARC/KAIST, Bruce La Plate from Uiversity of Wiscosi, http://liuxvm.org, ad Wikipedia
목차 운영체제개요 UNIX 개요 LINUX 개요 Uix 및 Liux의주요구성요소 커널 + 쉘파일시스템 (file system) 2
운영체제 (Operatig System) 운영체제란하드웨어와소프트웨어간의소통을도와주는 Iterface 하드웨어의상세한작동을조절함으로써유저의편의를도모한다. Multi taskig? Multi User? CUI?GUI?
현대 OS 의필수요소 Multi-user 하나의컴퓨터를여러사용자가동시에사용가능 ( 시분할 time sharig 기법 ) Multi-taskig 동시에여러개의작업 (task) 수행가능 Foregroud task Backgroud task: 창이나별도의사용자인터페이스가없이백그라운드에서실행되는프로그램 ( 예 : 프린터스풀러, 스파이웨어 ) 4
User Iterface ž CUI (Character User Iterface) 문자로모든실행과동작을표현 MS-DOS 유닉스 / 리눅스의각종쉘 ž GUI (Graphical User Iterface) 그림으로된요소로기능과용도를나타냄 그래픽을직접조작함으로써실행및동작가능 Mac OS X, Widows, Liux 등 마우스사용! 5 Itroductio to UNIX Systems
UNIX 및유사 UNIX 시스템의스크린샷
UNIX ž C 언어로프로그램된 OS 호환성이매우뛰어남 (Portability) 1969년 AT&T Bell 연구소에서개발 ž 다양한 brach BSD (UC Berkeley FreeBSD, OpeBSD, Mac OS X - Apple) 상용 UNIX (SuOS/Solaris, AIX - IBM) Liux UNIX의구성 커널 (Kerel, 파일시스템포함 ) 쉘 (Shell) (Commad-Lie Iterface) 7
유닉스및유사시스템의진화 8
Why Uix? 9
리눅스 (Liux) 는? ž 리누스토발즈 (Lius Torvalds) 가만든 Uix 클론 ž 소스가 완전공개된자유로운 운영체제 ope source ž Liux 는전세계개발자들이자발적으로참여하고만들어가는운영체제 ž 현재도활발하게개발되고있다. ž 리눅스개발자인 Lius Torvalds가현재리눅스커널개발프로젝트의프로젝트관리자 (coordiator) 역할을수행 10
Liux & Lius Torvalds Tux 11
리눅스는? ( 기술적측면 ) 32/64-Bit 유사유닉스운영체제 다양한기본유틸리티 (sed, awk, grep, ) 컴파일러 (C, C++, Fortra, Smalltalk, Ada, ) 네트워크유틸리티 (telet, ftp, pig, traceroute, ) Multi-user, Multitaskig, Multiprocessor X Widow 기반의 GUI 를갖춤다양한플랫폼에서실행가능공짜프로그램 + 소스코드가공개되어있음 OSS (ope-source software) GPL 라이선스 (geeral public licese)
리눅스의역사 Lius Torvalds 가최초개발 세계각지의프로그래머와협력인터넷상에 1991년에최초공개 리눅스커널의발전 Liux 1.0 (1994), 2.2 (1999) 현재 Kerel 버전 : 2.6.36 (2010-10-20, 1350 만줄의코드 ) 오늘날 1 천만대이상의컴퓨터에서동작 수천의프로그래머가리눅스커널개발에참여
리눅스배포판 리눅스커널, GNU 소프트웨어및여러가지자유소프트웨어로구성된운영체제 현재전세계적으로 300 여가지의배포판존재 대표적배포판 레드햇 (redhat), 우분투 (Ubutu), 수세 (Suse) 데비안 (Debia), 젠투 (Getoo) 14
Shell & Kerel 커널은시스템리소스와 OS 의프로그램간의상호작용을도와주는 OS 의핵심구성요소. 쉘 (Shell): Liux/Uix System 에서사용하는대화형 Iterface 사용자와 kerel 사이의인터페이스 사용자로부터명령을읽어실행하는프로그램 사용자의입력을해석하여 kerel 에전달 종류 : bash, tcsh, ksh,
리눅스커널의구성 16
프로세스 (Process) Process (Thread of executio abstractio) 독립적인실행의단위 우리가실행하는중인프로그램각각이하나의프로세스.. 리눅스의프로세스 (top) 윈도우의프로세스 (Ctrl + Alt + Delete) 17
파일시스템 (File System) 컴퓨터파일들을저장하고체계적으로관리하는방법. 파일이름으로파일들을관리한다. Metadata(data( 파일 ) 에관한 data) 를이용하여파일의정보를기록한다. 디렉토리들로파일을계층적으로나누어분류한다. 종류 : NTFS, FAT,EXT,HFS,...
Uix File System Filesystem (Widows vs UNIX) Widows: C:\, D:\ 라는 partitio 구분 ( 물론 A,E,G 등도가능 ) C:/ D:/ For example) c:\documets ad settigs\myid\ 내문서 \HaHaHa.txt 19
Uix File System Uix: root(/) 에서갈라진여러 directory.. 각각의 directory 에 partitio 을연결 (lik, mout) 할수있다. / bi dev usr etc home For example) /home/myid/hahaha.txt 20
Uix File System Storage abstractio 계층적구조 : 하나의단일 file 구조 (root directory) 에서뻗어나감. Logi 시위치 사용자의 HOME directory 각파일이나디렉토리에는사용자의권한에따른 permissio 존재 21
Uix File System ž File permissio ( 허용범위 ) 시스템의각파일은특정사용자가소유하며파일의퍼미션을설정한다. User/ group/ other Read/ Write/ Execute R W X R W X R W X User Group Other Root 는모든권한을가질수있다. 22
Permissio User/group/other u g byte 23
Mout System i UNIX Mout 란 File System 을 OS 에서이용가능하게하는과정. Widows 에서는보통드라이브 (c: d: e:) 에마운트시킨다. Liux 에서는 /dev 디렉토리에모든장치들을마운트한다.