[리눅스 커널 내부구조] Chapter 01 - 리눅스 소개

gom·2024년 3월 16일
post-thumbnail

1. 리눅스의 탄생

  • 리눅스는 리누스 토발즈를 필두로 GNU프로젝트가 합세하면서 전 세계 프로그래머들의 도움으로 탄생한 운영체제임
  • GNU 정신에 따라 완전 공개로 배포되며, 모든 프로그램의 소스 또한 공개되어 있음
  • 누구나 그 소스를 수정하여 성능을 향상시킬 수 있으며, 수정한 내용도 공개해야 함

2. 유닉스와 리눅스

  • 리눅스는 유닉스 계열의 운영체제임
  • 유닉스 역사에서 주목할 만한 운영체제는 CMU에서 개발한 Mach
    • Mach는 마이크로 커널 구조 채택
    • 이후 해당 운영체제 개발자 중 일부는 Window NT를 개발하고 일부는 Mac OS 개발
  • 토발즈는 Minix를 사용하다 해당 지식을 배경으로 리눅스 개발
    • 마이크로 커널 구조인 Minix에 비해 리눅스는 모노리딕 구조 기반으로 설계되었으며, 모듈을 도입하여 마이크로 커널 구조의 장점을 활용함

3. 리눅스의 배포판

컴퓨터 시스템

  • 하드웨어
  • 소프트웨어
    • 운영체제 ** 단순히 커널만 가지고는 운영체제로서 의미가 없음 → 시스템 프로그램 없이는 아무런 일도 수행할 수 없음
      • 커널
        • 항상 메모리에 상주하면서 동작하는 운영체제의 핵심 부분
        • 코어 또는 뉴클리어스라고도 함
      • 시스템 프로그램
        • 라이브러리, 컴파일러, 파일 관련 명령어, 태스크 관련 명령어, 네트워크 관련 명령어, 시스템 관리 명령어 등으로 구성됨
    • 응용프로그램

4. 리눅스의 장점

  • 사용자 임의대로 재구성 가능
  • 열악한 환경에서도 하드웨어 자원을 적절히 활용하여 동작
  • 커널의 크기가 작음
  • 완벽한 멀티유저, 멀티태스킹 시스템
  • 뛰어난 안정성
  • 빠른 업그레이드
  • 강력한 네트워크 지원
  • 풍부한 소프트웨어
  • 사용자를 위한 여러 가지 공개 문서들

5. 쉘(Shell)

  • 사용자는 쉘을 통해 리눅스와 대화함
  • 쉘 : 명령어 해석기, 사용자 입장에서 리눅스를 사용하는데 도움을 주는 비서
    • ‘man’을 이용하여 명령어의 기능과 사용법을 알 수 있음

이 글은 아래의 책을 공부 및 정리한 내용입니다.
리눅스 커널 내부구조 - 예스24

profile
탐험하는 개발자

0개의 댓글