MacOS의 커널은 FreeBSD, Darwin 및 기타 잊혀진 커널을 기반으로 하며, 이는 모두 단일체라고 생각합니다. 그러나 현재 MacOS 커널 XNU는 하이브리드입니다. 이는 Linux, BSD 등과 같은 널리 사용되는 UNIX 유사 대안과의 차이점 중 하나입니다.
Q: MacOS 소프트웨어는 Windows 소프트웨어보다 Linux에서 실행하기 더 쉬운 UNIX 유사 커널용으로 설계되었습니까? 작성자: "Easier" Me그것은 의미하지 않는다설정이 더 쉽습니다. 난 상관 없어. 내 말은 실행하기가 더 쉽다는 것입니다. 즉, "전력을 덜 소모하고 버그가 발생할 가능성이 적습니다".
참고: 나는 내 질문을 가능한 한 명확하게 표현하려고 노력했습니다. 제가 알고 싶은 내용을 자세히 설명할 수 없다면 알려주세요. 저는 아직 Linux에 대한 경험이 많지 않기 때문에 고려하지 않은 "분명한" 사항이 있을 수 있습니다.
답변1
아니요. 둘 다 UNIX와 유사한 커널이라는 사실은 거의 의미가 없습니다. 커널은 서로 완전히 호환되지 않습니다.
Linux에서 Windows 또는 MacOS 프로그램을 실행하려고 하는지 여부에 관계없이 프로그램이 의도한 대로 커널과 상호 작용하고 있다고 믿을 수 있도록 모든 시스템 호출을 가로채고 적절한 조치를 취하는 추상화 계층을 (적어도) 구현해야 합니다. 또한 모든 프로그램이 사용하기를 원하는 다양한 사용자 공간 항목을 구현해야 합니다. dyld
예를 들어 MacOS에서는 모든 프로그램이 이를 사용하지만 Linux의 어떤 프로그램과도 유사하지 않습니다.
Windows와 MacOS는 Linux와 다른 기본 바이너리 형식(각각 PE, Mach-O 및 ELF 파일)을 사용하므로 이점도 없습니다.