New World
[UNIX #1] 리눅스 소개 본문
1. 유닉스와 리눅스
유닉스의 특징
- 다중 사용자
- 다중 작업을 지원하는 신뢰성 높은 운영체제
- 모듈화 되어있음
- 명령어 기반
리눅스
- 유닉스의 무료 공개 버전
- PC 용 운영체제로 개발되어있음
multics : 최초의 시분할 운영체제
Unics : 작고 심플한 어셈블리어 운영체제
Unix : Unics가 C언어로 재작성됨
대표적인 유닉스 시스템
BSD 계열 : Free BSD, SunOS
System V 계열 : (BSD 계열에서 사업적인 목적으로 변경되며 생김) HP-UX, Solaris
리눅스
리눅스 등장
GNU 프로젝트 (1983)
- 리처드 스톨만이 유닉스와 유사한 공개 운영체제를 개발하기 위해 시작
- Free Software Foundation(FSF)이라는 이름으로 확정
- 프로그램을 오픈식으로 자유로운 사용과 배포를 주장
- GNU 선언문 발표 -> GPL 발표
리눅스 커널(1991)
- 리누스 토르발스가 작성
- 교육용으로 만든 것을 보고 새롭게 만듦
- 커널은 하드웨어를 제어하고 상호작용을 제공하는 운영체제의 핵심
MCC(1992)
- 리눅스라는 리눅스 커널을 사용한 운영체제를 의미
2. 리눅스 개요
- 다중 사용자와 다중 작업을 지원
- 뛰어난 이식성
- 모듈화 되어 업그레이드 또는 업데이트가 용이
- CUI : 셸을 통해 커맨드 입력
- GUI : 데스크톱
- 소스코드가 공개되어 공개 소스로 빠르게 발전하고 보완함
- 여러 종류의 파일 시스템을 지원
- 효율적 하드웨어의 활용
3. 오픈 소스와 라이선스
오픈소스
- 개발자가 소스코드를 공개해 누구나 사용, 수정, 공유할 수 있도록 허가
오픈소스의 장점
- 커뮤니티를 통한 협력 / 공유 / 개방이 발전에 효율적
소프트웨어 라이선스
- 지식재산권으로 보호받는 저작물, 공표/복제/배포/개작할 권한을 가짐
- 타인에게 일정한 대가나 조건을 전제로 권한을 부여할 수 있음
- 공개 범위, 공개 방법 등을 정하여 알림
GNU 프로젝트와 자유 소프트웨어 운동
- 목적에 상관없이 실행
- 프로그램을 복제 & 공유
- 소스코드를 개작할수 있는 자유
- 개작된 프로그램을 배포할 수 있는 자유
리눅스의 라이선스
- 리눅스는 독점되거나 배타되지 않는 자유 소프트웨어
- 주로 GPL을 따르며 일부는 LGPL
GNU GPL
- 자유롭게 사용, 복제, 배포
- 수정하여 배표하는 경우 소스코드를 공개하여야 함
- 수정된 소프트웨어에 저작권을 표시, 똑같이 GPL 조건으로 배포
GPL, LGPL, MPL | BSD, Apache, MIT 라이선스 |
소스코드를 공개해야하는 카피레프트 라이선스 - 기본적으로 코드 공개 |
배포 시 소스코드의 비공개가 허용됨 |
LGPL : 오픈소스 라이브러리에 적용됨 | |
MPL 코드와 결합하여 프로그램 만들 시, MPL 코드를 포함하지 않는 파이른 공개 의무가 없음 | |
소스코드의 공개 범위는 다르게 정의됨 - 전체/파일/모듈 단위 등 |
코드의 재사용을 높이려는 목적 |
4. 리눅스 배포판
응용 프로그램, 설치 프로그램을 포함한 완전한 운영체제
Debian 리눅스 | Red Hat 리눅스 |
- 자유 운영체제를 만들어가는 사람들의 독자적인 모임 | - 배포판 가운데 가장 널리 알려진 리눅스 |
- GNU 정신에 가장 충실한 배포판 (공식적 후원을 받음) - 코드명을 가지며 sid |
- Fedora라는 오픈소스 프로젝트 지원 - RPM - 바이너리, 설정파일, 라이브러리, 문서 등을 일괄 관리 |
CentOS 리눅스 | SuSE 리눅스 |
- RHEL의 소스코드를 기반으로 만들어지는 무료 배포판 - 서버용으로 많이 사용 |
- 독일에서 만든 배포판, 유럽에서 많이 사용 - 풍부한 기능, 안정성, 보안 기능 |
slackwaree 리눅스 |
Ubuntu 리눅스 |
- SLS 리눅스에서 파생 - 가장 먼저 대중화되며 가장 오래된 배포판 - 간결함을 설계 철학으로 유닉스 자체 학습에 적합 |
- Debian으로부터 파생 - 데스크톱 Unity를 제공하여 리눅스를 쉽게 사용할 수 있도록 - 사용 편리성에 중점 |
'Self-Study > Study' 카테고리의 다른 글
[어셈블리어 #1] (0) | 2022.08.25 |
---|---|
[UNIX #2, 3] 리눅스 설치, 셸 사용하기 (0) | 2022.08.20 |
[정보통신망#8] OSI 참조 모델 (0) | 2022.06.02 |
[운영체제#14] 분산 운영체제 (0) | 2022.06.02 |
[운영체제#13] 분산 운영체제 (0) | 2022.06.01 |