웹제로에 오신것을 환영합니다.
 
                   
home 로그인 회원가입 이벤트
 공지사항  
 서버작업  
 보안뉴스  
 보안패치  
 자주 묻는 질문  
 지식포럼  

HTML

 
PHP
제로보드
LINUX
WINDOWS
 호스팅 메뉴얼
 도메인 메뉴얼  
도메인 등록
도메인 파킹
도메인 포워딩
도메인 DNS변경
 웹메일 호스팅 메뉴얼  
MS-Outlook 2007 세팅법
Outlook Express 6.0 세팅법
 이벤트

ns.webzero.kr
121.254.249.2
 
ns2.webzero.kr
121.254.249.3



고객센터 홈 > 고객센터

리눅스



제목: 커널과 쉘
분류: 일반
이름: 웹제로™ * http://www.wixx.co.kr


등록일: 2007-11-27 11:01
조회수: 9258 / 추천수: 830


리눅스 커널과 쉘이라는 용어에 대한 설명과 관련 내용을 기술한 글.

아래의 내용은 당장 이해를 해야 할 것들은 아닙니다.
보고 이렇게 이루어져 있구나 하구 보고 넘어가면 될겁니다..

리눅스를 사용하다 보면 커널이나 쉘이라는 용어를 자주 사용하게 됩니다. 특히 커널 컴파일이란 것이 있어서 리눅스를 더 어렵게 느껴지게 만들기도 합니다. 쉘이란 것도 종류가 많고 쉘 프로그래밍이란 것도 있어서 리눅스를 사용하려면 기본적으로 쉘 프로그래밍을 해야되는 건가 싶기도 합니다. 이런 점들이 초보자에게는 부담스럽게 느껴집니다.

이런 리눅스의 커널과 쉘을 이해하는데 있어서 도스를 알고 있다면 쉽게 이해할 수 있을 것입니다.

▶커널은 도스의 IO.SYS나 MSDOS.SYS와 같은 기능을 하구요.

▶쉘은 도스의 COMMAND.COM 같은 역할을 합니다.

① 커널(Kernel)이란?

리눅스가 다른 운영체제에 비해 안정성이 뛰어나다는 얘기를 많이 하게 되는데 그 운영체제의 안정성과 밀접한 연관이 되는 것이 바로 커널입니다. 리눅스의 창시자인 리누즈가 한 일이 바로 유닉스의 커널을 PC에서 사용가능한 커널로 만들었다는 데에서 의미를 가지는 것처럼 커널은 리눅스라는 운영체제를 사용하게 만드는 근본이 되고 있습니다.

현재 리눅스는 커널은 'kernel.org'에서 지속적으로 업데이트되고 있고 리눅스 운영체제를 더욱 안정적으로 만들고 있습니다. 커널 컴파일이라는 것은 더욱 안전해진 커널을 사용하고 있는 시스템에 설치하기 위해서 꼭 필요한 작업입니다. 프롬프트에서 'rpm -q' 명령으로 확인할 수 있습니다. 업그레이드된 커널을 구하게 되면 커널 컴파일 과정을 거쳐서 현재 사용하는 리눅스의 커널을 업그레이드 할 수 있습니다.

② 커널과 쉘의 역할

도스에서 우리가 A라는 실행 파일을 B라는 실행 파일로 복사하기 위해서 다음처럼 입력하면 B.txt 파일이 하나가 더 생성이 됩니다.

COPY A.txt B.txt

COPY 명령은 COMMAND.COM에서 컴퓨터로 전달하는 것이구요. A라는 실행 파일을 B라는 실행 파일로 복사를 하는 것은 IO.SYS와 MSDOS.SYS가 하는 것입니다. 복사하는 과정은 눈에 보이지 않지만 IO.SYS에 정의되어 있는 open, read, write 등의 명령이 내부적으로 바쁘게 작동하여 B라는 실행파일이 생기는 거죠.

리눅스에서도 A.TXT를 B.TXT로 복사하는 다음 명령을 커널과 쉘이 담당하는 것은 도스와 비슷한 경우라고 볼 수 있습니다.

cp a.txt b.txt

도스는 외부 명령과 내부 명령이 있습니다. FORMAT이나 FDISK 같은 명령은 외부에 실행 파일이 있어야 실행이 되므로 외부 명령, COPY나 DEL, MOVE 등은 파일이 없어도 실행되므로 내부 명령입니다. 이런 내부 명령은 COMMAND.COM에서 관리하듯이 리눅스에서는 쉘에서 관리합니다.

리눅스의 쉘 명령어로는 cd, pwd, exit 등이 있고, 커널 명령어로는 fork, open, write, read, exec, iocntl 등이 있습니다. 리눅스의 외부 명령은 ls, rm, cpp, addusr 이외에 다른 실행 프로그램들이 있습니다.

③ 쉘의 종류

리눅스에서 쉘은 여러 종류가 있고 쉘마다 특징이 있습니다. 쉘은 크게 본쉘(bash), C쉘(csh), 콘쉘(ksh)이 있으며, 한컴리눅스 OS 에서는 기본으로 본쉘(bash)을 사용하고 있습니다.

본쉘은 최초의 유닉스 쉘이었으며 현재 사용하고 있는 유닉스 시스템에서 대부분에서 본쉘을 사용하고 있습니다. 쉘 프로그래밍이 쉬운 반면 다른 쉘보다는 사용자와 상호 작용이 부족합니다.

C쉘은 본쉘보다 사용자와의 상호작용이 더 좋습니다. C 언어에 익숙한 사용자들이 쉘 프로그래밍을 C언어와 비슷하게 할 수 있지만 쉘 프로그래밍의 인터페이스는 본쉘보다 떨어집니다. 콘쉘은 본쉘과 C쉘의 단점을 제거하여 효율적이고 상호작용과 프로그래밍 인터페이스가 모두 좋은 쉘입니다. 미지 리눅스에서는 사용하는 본쉘(bash)은 콘쉘보다 뛰어난 기능을 가지고 있습니다.

이처럼 쉘을 구분하는 것은 인터페이스니 쉘 프로그래밍이니 복잡한 단어로 구분되기 때문에 초보자에게는 어렵고 골치 아픈 얘기입니다. 그러나 쉘은 현재 리눅스를 사용하는 환경을 정의하거나 기능을 바꾸는데 밀접한 연관이 되어 있으므로 나중에 리눅스 사용에 자신이 생기면 더 깊이 있게 접해볼 필요성이 있습니다.

④ 쉘 프로그래밍

쉘 프로그래밍은 도스에서 BAT 파일과 같은 역할을 합니다. 도스의 AUTOEXEC.BAT 파일 안에는 부팅할 때 어떤 것들을 실행하고 내부적인 세팅에 사용되는 명령어들을 모아서 한꺼번에 실행하는 것입니다.

유닉스는 도스보다도 많은 명령어들이 있고 하나의 작업을 하는데 많은 명령어를 일일이 타이핑하는 것은 비효율 적이기 때문에 쉘 프로그래밍으로 대치합니다. 많은 작업들을 처리하려다 보니 일반 프로그래밍에서 사용되는 언어적인 개념까지 도입되어 있습니다.

리눅스 초보자에게는 복잡한 내용이 될 것이기 때문에 여기에서는 생략하겠습니다. 전문적인 내용을 원하는 독자는 'man' 명령어를 이용하시거나 다른 책을 참고하기 바랍니다.
  -목록보기  
의견(코멘트)을 작성하실 수 없습니다. 이유: 권한이 없는 회원레벨
번호 제목 글쓴이 추천 조회
265  boot.ini으로 멀티부팅하기 웹제로™ 574 10856
264  MySQL RPM으로 설치하자!! 웹제로™ 669 10759
263  리눅스에서 프로그램 설치하기 웹제로™ 719 12252
262  [리눅스명령어/3강] 시스템종료 명령어 사용법 웹제로™ 641 11331
261  [리눅스명령어/2강] useradd(adduser) 명령어 사용법 웹제로™ 629 14323
260  [리눅스명령어/1강] ls 사용 웹제로™ 840 12525
259  지정한시간에 메일보내기 웹제로™ 723 12147
258  프로세스 State의 상태별 설명 웹제로™ 805 9426
257  netstat State의 상태별 설명 웹제로™ 686 8849
256  top 출력내용 분석 웹제로™ 807 9094
255  GNOME이란?(www.gnome.org) 웹제로™ 738 9150
254   GNU란?(http://www.gnu.org) 웹제로™ 710 8852
253  KDE란? 웹제로™ 699 8922
 커널과 쉘 웹제로™ 830 9258
251  리눅스와 원도우의 장단점 비교 웹제로™ 689 9391
250  리눅스 마스코트, 펭귄 Tux에 관한 이야기 웹제로™ 371 7536
249  리눅스+아파치 서버에서 한글파일 제대로 지원하기1 웹제로™ 393 7868
248  리눅스+아파치 서버에서 한글파일 제대로 지원하기2 웹제로™ 652 9911
247  Apache 설정파일 예제 P3P적용의 건 웹제로™ 824 10392
246  리눅스취약점 웹제로™ 785 11021
-목록보기  -다음페이지  
1   2   3   4   5   6   7   8   9   10  .. 14   [다음 10개]
       
/ skin by  

기술보증기금인증  벤처기업 기술혁신형 중소기업 INNOBIZ ISO 9001 인증기업 이호스트데이터센터 기업부설연구소 인정서 정보보호 안전진단 필증 획득
(사)한국인터넷호스팅협회 회원사 한국인터넷진흥원 ICANN 인증 국제도메인등록기관 한국인터넷진흥원공인 도메인등록대행자 한국소프트웨어산업협회
소프트웨어사업자 신고확인서

회사소개 개인정보취급방침 호스팅 이용약관 회원 이용약관 이메일주소 무단수집거부 고객지원 찾아오시는 길

ㆍ본사 : 153-803 서울시 금천구 가산동 371-37 STX V타워 1509호 ㆍIDC 운영센터 : 서울시 금천구 가산동 459-9 LG 데이콤 7층
(주)이호스트데이터센터 사업자등록번호:214-87-61456 부가통신사업신고:서초 제 11006호 통신판매업신고:서초 제 05006호
Copyright(c)2005-2010 ehostIDC Allrights reserved. domain@ehostidc.co.kr

  굿네이버스