리눅스 역사

sally·2022년 1월 7일
0

CS

목록 보기
1/2

리눅스와 유닉스 차이

  • 리눅스 배포판
    : 리눅스 커널, GNU 소프트웨어 및 여러 가지 자유 소프트웨어로 구성된 운영 체제
  • 역사
    • 설치 절차가 복잡
      • 소스 코드로만 배포
      • 리눅스 커널 자체를 포함한 부팅 가능한 이미지 배포
      • 파일 시스템 설정을 위한 GNU 유틸리티 및 도구들이 모여있는 이미지로 배포
    • 하드디스크 드라이브에 설치 없이 라이브 배포판
  • 유닉스는 다중 사용자와 멀티태스킹 기능을 효과적으로 수행할 수 있는 운영체체를 만들기 위한 프로젝트에 참여
    • 본래 목적은 자료와 정보의 공유를 위한 것으로 여러 사람들이 하나의 자료를 동시에 활용할 수 있게 하는 것
    • 어셈블리 언어(특정한 기종에서만 사용될 수 있는 언어)
      • 다른 기종의 컴퓨터에서는 해당기종의 어셈블리 언어를 이용해서 운영체제를 다시 작성해야 한다는 불편함
    • C 언어
      • 기종간의 호환성을 만족시키고 프로그래밍 작업에 통일성과 효율성 확보
    • C언어로 작성된 소스코드는 이식될 하드웨어 환경에 맞게 컴파일을 통해서 다른 기종에서도 사용될 수 있게 되었습니다.

  • 리눅스의 탄생

    • 미닉스 (MIMIX)

      • 개인용 PC 운영체제인 MS-DOS는 워크스테이션용으로 개발된 유닉스에 비해 한계를 가져, 유닉스의 PC 버전용 개발로서, PC에서 멀티태스팅을 구현하기에 적절한 운영체제
    • 리눅스 커널 , 리누즈 토발즈(Linus B.Torvalds)

      • 유닉스의 커널을 PC에서 사용가능한 커널로 개발
      • 커널은 운영제체의 핵심으로 모든 작업에 우선순위를 두고서 인터럽트 처리, 프로세스 관리, 메모리 관리, 파일 시스템 관리, 프로그래밍 인터페이스 제공등 운영체제의 기본적인 기능들을 제공하는 핵심부문
    • 리눅스 배포판 ( != 리눅스)

      • 커널과 함께 여러 가지 유용한 프로그램들을 함께 모아서 제공하는 형태
    • 리눅스 운영체제

      • 컴퓨터를 다양하게 활용할 수 있도록 지원할 수 있는 시스템 차원의 통합적인 운영 환경
    • Gnu's Not Unix
      • Free Software Foundation의 회장인 리챠드 스톨만입니다. 그는 소프트웨어는 사용하는 모든 이들이 자유롭게 사용할 수 있도록 해주어야 한다는 철학
유닉스는 C언어의 사용으로 이식성과 프로그래밍 작업의 통일성과 효율성을 갖게 했고, 리눅스는 개인 PC에서의 리눅스 한계를 개선하여 인터럽트 처리, 프로세스 관리, 메모리 관리, 파일 시스템 관리, 프로그래밍 인터페이스 등 제공하는 커널의 개발과 리눅스 운영체제로 발전했다.

쉘의 종류

  • Bourne Again Shell (bash)
    • 실행명령 : bash
    • 리눅스에서 가장많이 사용되는 셸로 Bourne 셀을 토대로 C셸과 Korn Shell 의 기능들을 통합시켜 개발되었다.

참고

profile
sally의 법칙을 따르는 bug Duck

0개의 댓글