2장. 프로세스 관리

Download Report

Transcript 2장. 프로세스 관리

강의 개요
UNIX어드민 : 서버관리
강의 개요
교과목 명
UNIX 어드민 : 서버관리
담당교수
이종일 ( [email protected] , 010-6326-1045 )
강의 교재
강의 노트로 대체
참고 서적
페도라 리눅스: 시스템 & 네트워크, 이종원, 한빛아카데미
강의 노트
www.irix.co.kr
강의 목표
본 과정은 Linux 기초부터 웹 서버를 구축하고 관리하는
방법까지 이해하고 실습한다.
강의 진행
이론 강의 + 실습 + 실습문제
실습문제
매 강의 후 제시되는 실습문제를 풀어 제출
(평소 성적과 출석을 대체함)
강의 개요
평가 방식
중간고사(30%) + 기말고사(30%) + 평소성적(20%)
+ 출석(20%)
시험방식
필기시험 + 실기평가
중간고사
10월 16일 (목) – 범위 : 1 ~ 7주 강의 내용
기말고사
12월 11일 (목) - 범위: 9 ~ 15주 강의 내용
출석사항
한 학기에 결석 일이 4일 이상인 경우 과락
유고결석의 경우 증빙서류 사본 제출 (표1참조)
평가참여
중간, 기말고사 불참 시 과락
(질병 및 기타 불가피한 사항으로 응시하지 못할 경우는 증
빙서류를 첨부 제출 및 단독시험, 단, 성적은 최고 B학점까
지만 인정)
기타
취업자, 혹은 학기 중 취업을 한 학생은 반드시 취업
확인서를 지참하고 면담 신청할 것
강의 내용
주
강의 내용
1
강의 소개 및 리눅스 개요 설명
2
리눅스 기본 사항 설명 및 리눅스 설치
3
리눅스 기본 사용법 이해 및 실습
4
리눅스 파일시스템 이해 및 실습
5
리눅스 명령어 활용 및 실습, 시스템 관리 및 실습
6
쉘 프로그래밍 이해 및 실습 1
7
쉘 프로그래밍 이해 및 실습 2
8
중간고사
9
네트워크 이해 및 실습
10
리눅스 서버 개요
11
웹 서버 구축 실습 - Apache 웹 서버 설치 및 관리
12
DNS, FTP, 메일 서버 구축 실습
13
데이터베이스 서버 구축 실습 - MySQL 설치 및 관리
14
PHP 설치 및 MySQL 연동 실습
15
Apache – PHP – MySQL (APM)을 이용한 게시판 만들기 실습
16
기말고사
1장. 리눅스 개요
목차
1. 운영체제 개요
2. 리눅스 개요
1. 운영체제 개요

정의


컴퓨터의 모든 자원을 효율적으로 제어/관리하기 위한
시스템 소프트웨어 (OS : Operationg System)
주 제어/관리 대상




OS
CPU 및 프로세스
기억 장치
입출력 장치
파일
H/W
사용자 / 응용프로그램
1. 운영체제 개요

OS의 주요 역할

컴퓨터 시스템 초기화

자원의 효율적인 운영을 위한 스케줄링

사용자와 컴퓨터간 시스템 인터페이스

자원의 관리 및 할당

오류 검사 및 복구

자원에 대한 보안

통신 네트워크 관리

여러 사용자 간의 자원 공유
1. 운영체제 개요

OS의 종류
 유닉스계열
- Unix : Solaris, AIX, HP/UX, IRIX …
- Linux : Redhat, Ubuntu, SUSE …
- Mac : Darwin, NextStep, Mac OS
 윈도우 계열
- Windows NT/2000/2003/2008 server
- Windows 98/95/Me/XP/Vista/7
 기타 (MVS, CP/M, RTOS..)
1. 운영체제 개요

OS 비교
유닉스 계열
주요 OS
웹 서버
웹 프로
그래밍
언어
데이터
베이스
윈도우 계열


Solaris, AIX, HP/UX …
Linux (Redhat, Fedora..)

Apache


PHP
JSP

MySQL
Oracle, Informix …










Windows 9X, Me, XP
Win NT/2000/2003
IIS
Apache for Windows
ASP
PHP for Win
JSP for Win
MS-SQL
MySQL for Win
1. 운영체제 개요


OS별 서버시장 점유율
OS의 최근 추세




사용자 인터페이스 기능 강화
인공 지능적 처리 기능 강화
보안, 네트워크 기능 강화
임베디드(Embedded) OS의 확산
High-End Server
임베디드 시스템 : 미리 정해진 특정한
기능을 수행하기 위해 하드웨어와
소프트웨어가 조합된 전자 기기
(예 : 스마트폰, 내비게이션 등)
1. 운영체제 개요

세계 모바일 OS 시장 점유율 (2013년 1분기)
2. 리눅스 개요

Linux 정의
–
–

Unix를 모체로 만들어진 운영체제 (성능, 작동, 외형)
공개 소프트웨어
리눅스 배포판
–
–
–
Redhat Linux 군 (Redhat, Fedora, Mandrake, Turbo …)
Debian Linux 군 (Debian, Ubuntu, Lindows …)
Slackware Linux 군 (Slackware, SuSE …)
2. 리눅스 개요

특징
– Unix와 유사한 다중 사용자, 다중 작업의 대화형 운영체제
– 오픈 소스의 공개 운영체제로서 플랫폼에 독립적
– 성능, 확장성, 이식성 및 안정성이 뛰어남
– GUI 환경 지원 : X 윈도우 사용 (KDE/GNOME)
– 고성능의 RDBMS와 연동 지원
– 다양하고 안정적인 네트워크 기능
– 다중 프로세서 및 클러스터링 지원 : 시스템 당 8개 이상 CPU 지원
– 다양한 플랫폼 지원 : IBM PC, SUN Sparc, Alpha, Power PC
– 중대형 업무용 서버 및 웹 서버로 많이 사용됨
2. 리눅스 개요

장점



개방형 운영체제
–
누구나 소스코드를 읽고 자유롭게 수정 가능
–
GNU 의 GPL(General Public License) 정책
무료/저렴한 가격
–
리눅스는 인터넷으로 무료 제공되며 저렴하게 CD 형태로 판매
–
동일한 성능을 발휘하기 위한 하드웨어 사양이 window NT의
1/2~3/4 에 불과
안정적, 사용 용도에 맞게 최적화 가능
–
안정적인 OS
–
자신의 시스템에 적합하도록 최적화 가능(윈도우는 제한적)
2. 리눅스 개요

단점

사용자에게 다소 생소, 사용인구 적음
– 대부분의 사용들은 윈도우 환경에 익숙
지원하는 S/W, H/W 제한
– 게임이나 업무용 어플리케이션 부족
– 새로 등장하는 입출력 장치에 대한 지원이 늦음

한글처리, 한글화가 100% 완벽하지 못함




다수 배포판 존재, 호환성, 일관성 부족
– 배포판마다 설치방법 및 사용환경이 약간씩 다름
– 응용프로그램 설치 불편
기술지원 및 조직적인 마케팅 부족
시스템 관리 복잡
2. 리눅스 개요


리눅스 History
1991년 : 핀란드 대학생 Linus Tovalds가 Minix를 기반으로 개발
–
8월 : version 0.01
–
10월 : version 0.02 – 최초 공개 버전

1992년 : 리눅스 배포판 등장

1994년 : Kernel v 1.0 발표 - 최초 안정화 버전

1996년 : Kernel v 2.0 발표

2001년 : Kernel v 2.4 발표

2003년 : Kernel v 2.6 발표
2. 리눅스 개요

리눅스 최근 동향
–
대형 정보시스템을 위한 고성능/고 신뢰성 배포판 등장
–
고성능 (High-End) 컴퓨터에 대부분 사용
–
리눅스 시스템 환경에서 3D 애니메이션 영화 제작 (슈렉 등)
–
임베디드 리눅스로 응용 및 발전 -> 스마트폰, 네비게이션
–
응용프로그램 개발 증가 - http://linuxappfinder.com
–
대다수의 온라인 게임 서버에 리눅스가 사용
2. 리눅스 개요

Linux 구성 요소
유틸리티 및
응용프로그램
커널(Kernel)
및 파일시스템
H/W
사용자
쉘(Shell)
2. 리눅스 개요

커널(Kernel)?
 OS를 이루는 가장 핵심적인 소프트웨어로서 주로
하드웨어를 직접 제어/관리한다.

커널의 역할
•
•
•
•
•
•
프로세스 스케줄링 및 관리
파일관리 및 보안
입출력 제어
인터럽트 및 오류처리
기억장치 관리
프로세스간 통신
2. 리눅스 개요

Linux 커널명
2.0.32.
커널의버전
짝수면 안정화 버전
홀수면 테스트 버전
2.6.XX
패치횟수
2. 리눅스 개요

파일시스템 ( Filesystem )
- 정보를 생성, 삭제, 유지 관리하기 위한 계층 구조의 파일관리
시스템
- 파일시스템의 역할



파일 관리 및 파일의 Read / Write / Delete
저장공간 할당 여유공간 관리
파일에 대한 접근 제어
- 리눅스는 ext2/ext3 파일시스템을 사용하며 윈도우의 FAT나
NTFS 보다 단편화가 적다.
2. 리눅스 개요

계층적 파일구조
– 리눅스는 유닉스에서 유래한 계층적 파일구조를 사용한다.
(Windows에서도 사용)
Text 쉘 환경의 파일시스템 작업
GUI 쉘 환경의 파일시스템 작업
2. 리눅스 개요

쉘 (Shell)
- 사용자와 커널 사이에서 리눅스 명령어를 해석하는
명령어 해석기 ( Command Interpreter )의 역할을 수행
- 사용자의 명령을 커널이 실행할 수 있도록 기계어로 번역함
명령어
기계어
Shell
2. 리눅스 개요


리눅스 Text 쉘 종류
Bourne Again Shell ( bash, $ ) : 표준 본쉘 (sh)을 기반으로 한
리눅스 기본 쉘

C Shell ( tcsh, % ) : 프로그래밍 기능이 강화된 쉘, C언어와 유사
•
Korn Shell ( ksh, $ ) : 본쉘의 기능을 확장한 쉘
2. 리눅스 개요

리눅스 GUI 쉘
☞ 리눅스도 MS Windows 처럼 데스크탑 GUI 쉘 환경을 제공함
☞ GNOME, KDE, XFCE, LXDE, Openbox
2. 리눅스 개요



유틸리티 및 응용프로그램
유틸리티 : User 프로그램 개발 도구, 시스템 프로그램
( vi/emacs 등 편집기, C/C++ 등 컴파일러 )
응용프로그램 : 웹브라우저, 이미지뷰어, 게임 등
( Mozilla, Firefox, xv, Gimp, Open Office .. )
2. 리눅스 개요
GNU


1980년대 리차드 스톨만에 의해 시작된 운동/주창

FSF(Free Software Foundation) 설립

컴퓨터 프로그램에 대한 복사, 배포, 이해, 수정에 대한
모든 제한의 철폐를 목표


“모든 소프트웨어는 자유(free)로워야 한다”
- 자유로운 사용
- 소스 코드 공개
리눅스는 GNU를 준수한다.
GNU Linux
2. 리눅스 개요

GPL (GNU Public License)



GNU에 따른 오픈 라이센스
소프트웨어를 판매되는 것은 허용되나 판매자는 변경한
사항을 모두 포함해서 소스 코드를 전부 공개해야 함
단, 프로그래머들은 자신의 소프트웨어로 인해 발생하는
어떤 위험이나 손해에도 법률적 책임을 지지 않음
연습문제
연습문제
연습문제
1. 운영체제의 정의, 기능 및 종류에 대해 적어라.
2. 리눅스의 특징에 대해 적어라
3. 리눅스의 4가지 구성요소를 적고 각각을 간단히
설명하라.
4.
리눅스가 무료 운영체제인 이유를 적어라.
5.
GNU와 GPL의 차이점은 무엇인지 적어라.
6. 리눅스 배포판이 무엇인지 적어라.