Unix 아키텍처

Unix architecture

Unix 아키텍처는 Unix 철학을 구현하는 컴퓨터 운영 체제 아키텍처입니다.단일 UNIX 사양(SUS)이나 유사한 POSIX IEEE 표준 등의 표준을 준수할 수 있습니다.모든 Unix 아키텍처의 컴퓨터 운영체제를 설명하는 하나의 공개된 표준은 없습니다.이것은 부분적으로 Unix 전쟁의 유산입니다.

묘사

아키텍처에는 Unix와 같은 시스템이 많이 있습니다.이 중 주목할 만한 것은 Linux 배포입니다.Unix와 Unix와 유사한 시스템 간의 차이는 치열한 법적 다툼의 대상이 되어 왔으며, UNIX 브랜드인 The Open Group의 소유자들은 "Unix와 유사한" 및 유사한 용어에 반대합니다.

SUS 브랜드의 UNIX 아키텍처와 다른 유사한 아키텍처의 구분에 대해서는 Unix-like를 참조하십시오.

커널

Unix 커널(운영 체제의 핵심 또는 주요 컴포넌트)은 프로세스 관리, 스케줄링, 파일 관리, 디바이스 관리, 네트워크 관리, 메모리 관리, 하드웨어 디바이스로부터의 인터럽트 처리 등 다수의 커널 서브시스템으로 구성됩니다.

각 서브시스템에는 다음과 같은 기능이 있습니다.

  • 동시성:Unix는 멀티프로세싱 OS이기 때문에 시스템의 성능을 향상시키기 위해 많은 프로세스가 [disputed ]동시에 실행됩니다.
  • 가상 메모리(VM): 메모리 관리 서브시스템은 가상 메모리 개념을 구현하기 때문에 실행 가능한 프로그램 크기 및 RAM 크기에 [disputed ]대해 걱정할 필요가 없습니다.
  • 페이징: 물리 메모리의 내부 플래그멘테이션과 외부 플래그멘테이션을 최소화하는 기술입니다.
  • 가상 파일 시스템(VFS): VFS는 사용자가 다양한 파일 시스템의 복잡성을 숨기기 위해 사용하는 파일 시스템입니다.사용자는 동일한 표준 파일 시스템 관련 호출을 사용하여 다른 파일 시스템에 액세스할 수 있습니다.

커널은 인터럽트와 트랩 처리, 사용자와 시스템 공간 분리, 시스템 호출, 스케줄링, 타이머와 클럭 처리, 파일 기술자 관리 등의 기본적인 서비스를 제공합니다.

특징들

Unix 아키텍처 개념의 주요 기능은 다음과 같습니다.

  • Unix 시스템은 시스템 및 프로세스 작업을 관리하는 중앙 집중식 운영 체제 커널을 사용합니다.
  • 커널 이외의 소프트웨어는 모두 커널 관리 프로세스로 구성되어 있습니다.
  • UNIX 시스템은 프리엠프티브 멀티태스킹입니다.여러 프로세스를 동시에 실행할 수도 있고 작은 시간 내에 실행할 수도 있고 거의 동시에 실행할 수도 있으며 커널에 의해 프로세스가 중단되어 실행 중지될 수도 있습니다.이를 스레드 관리라고 합니다.
  • 파일은 계층형 파일 시스템의 디스크에 저장됩니다.시스템 전체에 걸쳐(루트 또는 "/"), 그 아래에는 파일과 디렉토리, 서브 디렉토리, 서브 디렉토리 등이 모두 포함됩니다.
  • 몇 가지 예외를 제외하고 디바이스 및 프로세스 간의 일부 통신 유형이 관리되고 파일 시스템 계층 내에서 파일 또는 의사 파일로 표시됩니다.이것은 모든 것이 파일이기 때문에 알려져 있습니다.그러나 Linus Torvalds는 이것이 부정확하며 "모든 것이 [1]바이트 스트림"으로 바꿔 표현해야 한다고 말합니다.

UNIX 운영체제는 다음 기능을 지원합니다.

  • 멀티태스킹 및 멀티사용자
  • 프로그래밍 인터페이스
  • 디바이스 및 기타 오브젝트의 추상화로서 파일 사용
  • 내장 네트워킹(TCP/IP가 표준)
  • init 또는 inet에 의해 관리되는 '데몬'이라고 불리는 영속적인 시스템 서비스 프로세스

비판

Unix-Haters Handbook 에서는, 이러한 설계 기능의 일부를 유저의 관점에서 장해로서 취급하고 있습니다., 일부 정보는 오래되어 최신 Unix 또는 Linux같은 Unix와 유사한 운영 체제에 적용할 수 없습니다. Raymond는 몇 가지 문제가 여전히 진행 중이며 다른 문제는 해결되었다는 것을 발견했습니다.Raymond는 Unix의 배후에 있는 모든 개념이 기능하지 않는 것은 아니라고 결론짓고 있습니다.비록 이 책의 의도는 [2]Unix가 실제로 문제를 해결하기 위해 개발자들과 논의를 장려하지 않고 열등하다고 묘사하는 것이었음에도 불구하고 말입니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Torvalds, Linus. "signalfd v2 - signalfd core".
  2. ^ Raymond, Eric S. "The Unix Hater's Handbook, Reconsidered".