[Linux] Unix

귀찮Lee·2023년 3월 13일
0

Liunx

목록 보기
2/5

◎ Unix의 역사

  • 개발 초기

    • Bell 연구소의 Kenneth Thomson이 PDP-7위에서 개발 (1969)
      • PDP-7 : microcomputer의 한 종류
      • B Language를 이용하여 작성함
    • Dennis M. Ritchie가 참여하여 대부분을 C언어로 작성함 (1973)
      • Dennis M. Ritchie : C Language 창시자
  • 배포 및 분화

    • Sixth Edition 개발(1976)
      • 다른 기관이 사용할 수 있도록 배포한 최초의 버전
      • 이후 AT&T 계열, BSD 계열로 분화해서 발전함
  • 분화 과정

    • AT&TUNIX
      • System V, Release 3 개발(1987): STREAMS도입
      • System V, Release 4 개발(1989): C/Korn shell, Job control, Symbolic link
      • 상용 버전과 따로 연구 버전도 개발됨
    • BSD UNIX
      • BSD4개발(1980): Job control, Reliable signal
      • BSD4.4개발(1993)

◎ Unix의 분화

image.png1image.png2
  • Unix의 확산 계기

    • 소스코드의 공개
    • C언어로 작성 (높은 이식성)
      • 기존 OS는 어셈블리 언어로 작성되어 있어 개발하기가 어려움
  • 관련 문제점

    • Unix의 분화가 많아지면서 다른 OS로 바꾸게 되면 코드를 전반적으로 수정해야 했음
    • OS interface의 표준화의 필요성이 대두됨

◎ Unix의 표준화

  • ANSI C (1989)

    • American National Standards Institude
    • C 언어의 문법, 라이브러리와 헤더 파일의 표준을 제정
    • 다양한 운영체제 환경에서 C의 호환성을 높이기 위함
  • POSIX (1988)

    • Portable Operating System Interface for Computer Environments
    • 운영체제가 제공해야 하는 서비스를 정의
    • 1003.1 (POSIX.1) : 운영체제의 인터페이스 표준
    • 1003.2, 1003.7 등
  • -> 해당 표준화 작업을 통해 Unix의 이식성이 높아짐

◎ Unix의 장단점

  • 장점

    • Open System : 모든 사람이 무료로 사용할 수 있다.
    • Small is beautiful philosophy
      • file : stream of bytes로 생각함
      • Data, Device, Socket, Process : 전부 file로 취급함
    • Portability
      • High-level language : C를 이용하여 사람이 이해하기 쉬움
    • True Parallelism (병렬성)
      • Multitasking, MultiProcessor
      • OS 표준화 작업을 통해 대부분의 OS에서 지원
  • 단점

    • 많이 분화가 되었다
      • 표준화 작업을 통해 단점 일부 해소
    • Unix가 발전하면서 "Small is beautiful philosophy"가 지켜지지 않음
      • 오픈 소스이기 때문에 발전을 통제할 수 없다.
    • GUI가 부족
      • 최근에는 그렇지 않음 ex) ubuntu
profile
장비를 정지합니다.

0개의 댓글