Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

imgusdn

Linux 01 본문

리눅스

Linux 01

I_eve 2023. 1. 8. 15:01

Linux 개요

1. Operating System

- 컴퓨터의 Hardware와 다른 응용프로그램들을 제어, 관리하는 역할을 하는 System Software

- 운영 체제의 목적

  • 사용자가 프로그램을 편리하게 사용할 수 있는 환경 제공
  • 자원을 최대한 공정하고 효율적으로 프로세스에 할당
  • 올바르지 않은 자원의 낭비를 막기 위해 프로세스 관리, 입출력 장치 제어

- 운영 체제의 역할

  • 프로세스 관리(프로세스 생성, 삭제, 중단 및 재개)
  • 메모리 관리(메모리 할당 여부 감시, 프로세스의 메모리 할당 및 해제)
  • 2차 기억장치 관리(저장 장치 할당, 디스크 스케줄링)

- 운영 체제의 종류

  • Unix, Linux, Windows, MAC OS 등

2. Linux  소개

- Linus Torvalds(리누즈 토발즈)가 Linux 커널 개발

  • 어원 : Linus' unix
  • Unix System의 MINIX를 i386 CPU의 IBM PC에 호환될 수 있도록 제작
  • 1991년 9월 Linux Kernel 0.01 개발, 같은 해 10월 0.02 발표

(1) Linux 역사

- 1971년 Unix Server 운영체제 발표

- 1970년대 'BSD 계열'과 'System V' 계열로 발전

- 1985년 오픈 소소의 사상이 되는 'GNU 선언문' 발표

- 1991년 리누즈 토발즈에 의해 Linux Kernel 공개

- 강력한 네트워크 기반의 운영체제로 현재도 계속해서 발전

 

(2) 특징

- 공개형 오픈 소스(Open Source) 운영체제(GNU/Linux)

- 다중 사용자(Multi-User), 다중 작업(Multi-Tasking), 가상 터미널(VIrtual Terminal)

    > 단일 시스템 상에서, 여러 사용자가 가상 터미널을 이용하여 동시에 다중 작업이 가능

- TUI, GUI 환경 제공

    > Console(TUI; Text User Interface)과 X-Window(GUI; Graphic User Interface)

- 강력하면서 안정적인 네트워크 지원

- Unix와 완벽한 호환 : UNIX 표준인 POSIX 표준에 따라 개발됨.

- 다양한 플랫폼을 지원

- 가상 메모리 시스템 구현

 

3. Linux 구성 요소

(1). Kernel(커널)

- Linux System 구성의 기초를 이루는 핵심(Core) 부분

- OS라 불리는 실질적인 요소

- Hardware와 사용자 프로그램 사이에 위치하여 CPU, Memory, Disk등의 자원을 제어

- 프로세스 스케줄링, 기억장치 관리, 파일 관리, 시스템 호출 인터페이스, I/O 기능

- Linux Kernel의 최신 정보 확인 -> http://www.kernel.org 

 

The Linux Kernel Archives

 

www.kernel.org

(2) Shell(쉘)

- User가 입력한 명령어를 기계어로 번역해 주는 명령 해석기(Command Interpreter)

- DOS의 command.com의 역할과 유사

- Kernel에 내장되어 있지 않은 하나의 독립 프로그램

- Kernel과 사용자 프로그램 사이에 위치하는 System 제어의 수단

- User가 로그인시에 자동으로 형성

- Shell에는 다양한 종류가 있으며 Linux의 기본 Shell은 Bash Shell

- Shell의 종류

  • Bourne Shell(/bin/sh)
  • AT&T Bell 연구소의 Steve Bourne이 개발한 Original Unix Shell
  • Shell Programing 용도로 권장
  • Unix System의 시스템 관리자 계정(root)의 기본 Shell
  • 프롬프트 : #(관리자 계정), &(일반 계정)
  • C Shell(/bin/csh)
  • 버클리 대학의 Bill Joy가 C언어를 기본으로 개발
  • Bourne Shell에 기능 강화(command history, alias, job control 기능 등..)
  • 프롬프트 : #(관리자 계정), %(일반 계정)
  • Korn Shell(/bin/ksh)
  • AT&T Bell 연구소의 David Korn이 개발
  • Bourne Shell에 C Shell의 몇몇 기능을 추가
  • 프롬프트 : #(관리자 계정), $(일반 계정)
  • Bash Shell(GNU/Bourne Again Shell)(/bin/bash)
  • FSF(Free Software Foundation)에서 개발한 POSIX 호환 Shell
  • Linux에서 가장 많이 사용되는 Shell
  • Bourne Shell에 csh과 ksh의 몇몇 기능을 추가
  • 프롬프트 : #(관리자 계정), $(일반 계정)
  • 기타 TC Shell, Z Shell 존재

'리눅스' 카테고리의 다른 글

리눅스 명령어  (0) 2023.02.21
Ubuntu에 apache, openSSH 서비스 설치  (0) 2023.02.21
리눅스의 파일과 디렉터리  (0) 2023.01.08