Skip to content
Tiantan
Articles

Darwin에는 다른 Unix에없는 ' 어떤 기능이 있습니까? 아니면 그 반대의 경우도 마찬가지입니까?

On 2월 16, 2021 by admin

Darwin에 고유 한 기능이 있습니까? 다른 Unixe에 Darwin에없는 기능이 있습니까?

답변

OS X는 유일한 나머지 운영 체제입니다. Mach 마이크로 커널 기반 은 여전히 상업적으로 관련이 있습니다. 몇 가지 진행중인 연구 프로젝트와 노후화 된 OS가 여전히 오래된 머신의 프로덕션 설정에서 사용되고 있지만 현재 새 머신에서 구매할 수있는 것은 없습니다.

OS X에는 일반적인 것이 있습니다. * ix에있는 다양한 커널 기능 비 호환성. 가장 최근에 해결해야했던 가장 큰 문제는 System V 메시지 대기열 이 없다는 것입니다. (msgget(2) 및 친구들.) “실제”System V 변형 이상을 위해 작성된 메시지 대기열 코드 —를 교체해야했습니다. OS X에서 소프트웨어를 실행하기 위해 TCP / IP를 사용하여 Linux —로 포팅되었습니다. 애플리케이션의 경우이 두 가지 IPC 방법의 차이점이 우리가 선택을 할 때 중요했습니다. 메시지 대기열이 있지만 나중에 아키텍처 변경으로 인해 TCP / IP로 전환하는 것이 큰 문제가되지 않았습니다.

답변

바로 말하자면, “Darwin은 Mach 2.0 위에 얇은 BSD 레이어가 아닌가?

NexTStep을 사용 했었습니다. 현재 MacOSX가 얼마나 떨어져 있는지 모르겠습니다. NeXTStep,하지만 …

Mach 2.0은 커널 수준에서 다른 추상화 집합을 제공했습니다.

  1. “작업”: 주소 공간 + 집합입니다. 스레드가 실행 중일 수 있습니다.
  2. 스레드. 예약 가능한 실행 단위입니다. 작업 (주소 공간)은 1 개 이상 실행 중입니다. 나는 Mach-O 파일 (Mach의 실행 파일 형식)이 프로세스 런타임에 둘 이상의 스레드를 지정할 수 있다고 생각합니다. 더 많은 Cthread를 시작하는 main () 함수가 없으면 OS가 하나를 시작합니다.
  3. 포트 . 이들은 TCP 또는 UDP 포트와 다릅니다. 그들은 입력되고 순서가 지정된 메시지 스트림입니다. 오히려 RPC와 비슷합니다. 프로토콜 사양 파일을 만든 다음 컴파일러를 통해 실행하여 서버 및 클라이언트 측 스텁, 마샬링 및 언 마샬링 루틴 등을 얻었습니다.
  4. 사용자 수준 메모리 호출기. 다른 작업의 주소 공간의 페이징을 처리하기 위해 작업 + 스레드를 설정할 수 있습니다.

원래 CMU Mach 사람들은 이러한 추상화를 사용하여 BSD Unix 프로세스를 에뮬레이션 했습니다. MS-DOS 프로세스와 VMS 작업에 아주 적합합니다. 각 VMS 작업에는 2 개의 Mach 작업과 많은 스레드가 필요했습니다. 누군가 사용자 공간을 사용하는 NeXTStep 용 Mac OS (pre-OSX) 에뮬레이터를 판매했습니다. 효과적인 호출기입니다.

이전 CMU Mach 간행물 페이지 : http://www.cs.cmu.edu/afs/cs/project/mach/public/www/doc/documents_top.html

VMS-on-Mach 문서 : http://www.sture.ch/vms/Usenix_VMS-on-Mach.pdf

댓글

h3>

  • Mac OS X (따라서 Darwin)은 Mach 3.0을 사용합니다.

답변

정답은 아니지만 DTrace 는 Solaris, Darwin / OS X 및 * 용으로 존재하는 멋진 시스템 디버깅 도구입니다. BSD, Linux는 아닙니다.

댓글

  • Oracle은 DTrace를 Linux로 포팅했습니다. 2011 년 10 월부터 Oracle은 Solaris에서 Linux 로의 DTrace 포팅을 발표했지만 2014 년 10 월 13 일 현재 공식적으로 사용할 수 없습니다. ( slideshare.net/brendangregg/from-dtrace-to-linux )

답변

Darwin은 지원되는 파일 시스템 유형이 비교적 적습니다. devfs와 같은 특수 기능 및 webdav와 같은 네트워크 유형 외에 목록은 다음과 같습니다.

  • HFS / HFS +
  • UFS / FFS
  • ISO-9660 / UDF / CDDA
  • NTFS
  • FAT

이 목록 중 UFS 는 Unix 용으로 설계되었지만 HFS +는 필요한 모든 Unix 기능을 지원하도록 업그레이드되었습니다. Mac OS X 10.6부터 UFS를 루트 파티션에 사용할 수 없지만이 제한은 아마도 Darwin에는 적용되지 않을 것입니다. 기본적으로 HFS +는 대소 문자를 구분하지 않지만 생성시 대소 문자 구분을 요청할 수 있습니다. Mac OS X 대소 문자를 구분하는 파티션에서 실행되지만 많은 유명 Mac 애플리케이션은 실행되지 않습니다 (예 : Adobe CS).

한동안 Apple은 HFS를 ZFS , 심지어 일부 Mac OS X 버전과 함께 ZFS를 제공했지만, 슬프게도이 실험은 해결할 수없는 라이선스 문제 로 인해 실패했습니다.

댓글

  • OS X ' s / macOS '의 NTFS 쓰기 지원은 제가 회상하는 것처럼 실험적이며 안정화되지 않았기 때문에 여전히 버그가있는 것으로 보고되었습니다 .

답변

다윈을 다른 UNIX의 풍미 . Solaris는 하나이고 HP / UX는 또 다른 하나입니다. 이상 이 많지만 “높음- 프로필 “이지만 그들은”있습니다. 그리고 모든 맛에는 고유 한 특성이 있습니다. 그것이 애초에 맛이있는 이유입니다. 일부 회사는 판매에 도움이 될 (또는 단순히 작업하거나 관리하는 데) 도움이 될 무언가를 생각하고 만들어서 자체 이름을 부여합니다.

의견

  • UNIX (모두 대문자)는 여러 국가에서 The Open Group의 등록 상표이며 "입니다. UNIX " (모두 대문자), 인증은 필수 입니다. Darwin은 ' 다른 " UNIX 유형 "-그러나 Intel x86-64의 Mac OS X 10.10은 다른 UNIX로 인증되었습니다.

답변

Apple에서 발표 한대로 Darwin이 더 이상 독립적 인 역할을하지 않는다고 들었다면 그래서 가장 큰 차이점은 그 위에 OS X입니다. : D

이전 Mac OS, 새로운 Mac OS X, NeXT와의 통합이긴하지만 가끔 웃기지 만 diskutil 및 hdiutil 는 훌륭합니다. 아마도이 작은 것들을 사용하고 XCode를 좋은 도구로 만든 이들에게 관심을 기울이는 NeXT에서 남겨진 오래된 Mach 커널 아키텍트 일 것입니다.

Answer

Darwin은 FreeBSD를 기반으로합니다. 다른 Unix 운영 체제 (내 경험상)에는 존재하지 않는 멋진 기능 중 하나는 Berkeley 패킷 필터 , 일명 /dev/bpf. 패킷 캡처에 사용할 수있는 매우 다양한 기기 입니다.

댓글

  • Darwin은 실제로 FreeBSD를 기반으로하는 것은 아니지만 일부 사용자 영역을 차용합니다. 여기에 다른 의견이 더 잘 설명됩니다. bpf (4)는 ' Darwin 및 FreeBSD / NetBSD / OpenBSD 만있는 것이 아니며 ' 누군가가 이전 Linux 커널 용으로 구현했습니다. SCO는 유닉스웨어 제품으로 유명합니다.

답변

내 마음에 떠오르는 주먹 OSX가 콘솔에 가지고있는 모든 도구입니다. 유닉스에는 더 많은 유용한 명령이 있습니다. Diskutil은 쉘의 파티션 마법과 같습니다.이 도구는 디스크 작업에 대한 옵션이 너무 많아서 fdisk가이 짐승이 가진 것의 10 %에 불과합니다. btw osx는 JBOD, Strip 및 Mirror를 사용할 수있는 정말 훌륭한 Software Raid 지원을 지원합니다. 소프트웨어 레이드 유형 .. 정말 유닉스가 이걸 가지고 있나요? 당신의 꿈에 !!; D

SystemProfiler-모든 하드웨어 ID, 이름, 모델, sn “등을 표시하는 훌륭한 도구 매우 편안한 방법입니다.

darwin 커널은 “유닉스 에서처럼 완전히 투명하지 않습니다.

darwin은 killall util = P unix는 없습니다. > 기술

다른 파일 시스템도 .. HFS, HFS +

아마 후자는 더 많이 기억할 것입니다 =)

댓글

  • Darwin에 ' killall '이 있고 기타 Unix 변형이 ' 아니요? 그것은 ' 사실이 아닙니다.
  • 이 답변은 트롤링으로 의심됩니다. os X 이외의 * nix에 대한 귀하의 진술에서 그렇게 명예를 훼손 할 필요는 없습니다. 또한 제가 마지막으로 * NIX killall을 사용했을 때 제 PATH에 절대적으로 존재했습니다. 또한 Linux에는 시스템 프로파일 러가 있습니다. 너의 숙제를해라. ' d é 우세가되지 마십시오. 편집 : 저는 OS X를 사용하고 매우 좋아합니다.
  • 저는 Linux에서 killall을 사용하므로 ' 다윈에만 국한되지 않습니다.
  • 이 답변은 모호하고 부정확합니다. fdisk에는 어떤 유용한 기능이 없습니까? Linux RAID (mdadm)에는 연결 (LINEAR), 스트라이핑 (RAID0) 및 미러링 (RAID1) 등이 있습니다 . Linux는 HFS와 HFS +도 모두 지원합니다.
  • BTW : Linux-killall과 Solaris-killall은 상당히 다릅니다.

Written by admin

답글 남기기 답글 취소하기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다

최신 글

  • 공진 쌍극자와 발룬 사용
  • “ 할 수 없음 ” 및 “ 할 수없는 ? [중복]
  • JFK에서 국내선 항공편의 터미널 간 이동이 가능합니까?
  • “ 감사합니다 ” 또는 “ 감사합니다 ”
  • ' 추상적 인 아이디어 '는 무엇을 의미합니까? [종료]

보관함

  • 2021년 2월
  • 2021년 1월
  • 2020년 12월
  • 2020년 11월
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어

Copyright Tiantan 2021 | Theme by Theme in Progress | Proudly powered by WordPress

Back to top