포털:고등학교/정보·통신 계열 전문 교과(2015)/컴퓨터 시스템 일반/리눅스의 이해

위키배움터

리눅스란?[편집]

컴퓨터의 운영체제들 중 하나이다.
핀란드 헬싱키대학 학생이었던 리누스 토르발스(Linus Torvalds)가 1991년 유닉스의 미닉스 운영체제를 사용하다가 리눅스 커널에 여러가지 기능을 추가해나가면서 새롭게 만들어진 운영체제이다.
처음에는 Freax이란 이름으로 지으려 했으나 Linus' UNIX라는 의미의 LINUX라는 이름을 가지게 되었다.

여담으로 LInux's Not Unix라는 재귀적 의미도 있다.

리눅스의 구성은?[편집]

일반적으로 리눅스는 리눅스 커널(Kernel)과 셸(Shell)로 이루어져 있다. 그 외에도 컴파일러, 여러개의 소프트웨어가 있는데, 사실 리눅스 커널만 사용하면 전부 리눅스라고 한다.

리눅스 커널은 컴퓨터를 구동할 수 있게 해주는 시스템 자원을 관리하는 핵심 부분이다. 목적은 하드웨어 장치관리 이며, 프로세스 관리, 입출력 관리, 메모리 관리 등 핵심 기능을 수행한다.

그러나 커널 만으로는 프로그램이 구성될 수 없기에 GNU와 함께 구성되어 GNU/리눅스 라고 불리는 형태도 있다.


리눅스의 특징은?[편집]

윈도우와는 달리 무료이기 때문에 별도의 구매 비용이 발생하지 않는다.[편집]

리눅스는 운영체제를 무료로 사용할 수 있다. 게다가 다양한 프로그램들 또한 무료이다. 그러나 윈도우에서 사용하던 프로그램들이 모두 리눅스에서도 사용할 수 있는 것이 아니기 때문에 리눅스를 지원하지 않는 프로그램들이 있는 경우가 더러 있다.

+)모든 리눅스 운영체제가 무료인 것은 아니다. 개인용 버전은 무료이지만, 기업용(상업용)버전은 유료 라이선스를 구매하여야 사용할 수 있다. 그렇다 하더라도 무료인 리눅스 운영체제는 매우 다양하다.


오픈소스[1] 운영체제이다.[편집]

리눅스는 전 세계의 누구든지 리눅스 개발에 관여할 수 있다. 따라서 직접 수정 및 배포할 수 있다. 그렇기 때문에 리눅스는 다양한 종류의 배포판이 존재한다. 그러나 각각의 배포판에 맞는 명령어를 습득해야 한다는 단점이 있다. 또한 버그나 해킹등의 보안문제에 대해서 모든 사용자가 수정이 가능하기 때문에 보안성과 안정성이 뛰어난 특징이 있다.


GUI[2] 환경이 아니다.[편집]

MS 윈도우 또는 애플 macOS 같은 운영체제에서는 GUI가 기본 시스템이기 때문에, 클릭할 수 있는 환경이 제공된다. 그러나 리눅스는 GUI가 아니라 별도의 프로그램으로 작동되기 때문에, 클릭을 할 수 없고 해당 명령어들을 외워서 사용을 해야한다.
이것의 장점은 사용자가 원하는 GUI환경을 설치해서 마음껏 커스터마이징할 수 있다는 것이고, 단점은 일반사용자가 제대로 사용하려면 GUI환경 구조를 알아야 한다는 것이다.
대부분 리눅스가 어렵다는 인상을 주는 이유 중 하나가 이 GUI 환경이 아니기 때문이다.


네트워크 운영 체제[3]이다.[편집]

모체인 UNIX가 통신 네트워크를 지향하기 때문에 리눅스 역시 서버 및 네트워크 구성에 유리하다.
또한 완벽한 다중 스레드, 다중 작업, 다중 사용자[4] 기능을 지원할 수 있다. 그렇기 때문에 하나의 컴퓨터에서 여러 계정이 사용할 수 있고, 그 계정마다 권한이 다르게 주어지기 때문에 뛰어난 안정성과 시스템 보안성을 갖는다.


리눅스의 활용[편집]

리눅스의 구분[편집]

리눅스는 데스크톱 버전(for 일반사용자)과 서버 버전(for 서버사용자)이 있다. 리눅스 기반의 운영체제를 사용하고 있는 것들에는 안드로이드 스마트폰, 태블릿 등이 있을 뿐만 아니라 사물인터넷 장치들에도 활용되고 있다.
또한 네트워크 및 통신의 목적으로 제작되었던 만큼 네트워크 분야에도 유용히 이용되어진다.


리눅스 배포판[편집]

우분투
데비안
페도라

  1. 오픈소스 : 소스코드를 공개하여 누구든지 특별한 제한 없이 그 코드를 보고 사용이 가능한 소프트웨어
  2. GUI(graphical user interface) : 그래픽 사용자 인터페이스
  3. 네트워크 운영 체제(NOS) : 라우터와 스위치등의 네트워크 장치 구성에 적합한 운영 체제
  4. 다중 사용자 : 하나의 컴퓨터의 여러 명의 컴퓨터 사용자의 동시 접근을 허용하는 것