Skip to content
oraccha edited this page Jan 14, 2013 · 1 revision

MacOS version X

BSD ベースの MacOS.Mach 3 + FreeBSD 5 ベースで、カーネルは XNU (Mac OS X is Not Unix)と呼ばれる。

  • [http://www.osnews.com/story.php?news_id=421 MacOSX Week: tales of a BeOS Refugee] (OS News 2001-12-17) . BeOS Bible の著者 Scot Hacker 氏による MacOSX レビュ. やっぱり[http://www.osnews.com/story.php?news_id=421&page=13 ファイルシステム周り]が一番の違いなのかな.

    • [http://slashdot.org/article.pl?sid=01/12/17/1820230 MacOSX vs BeOS ShootOut] (Slashdot 2001-12-17) より.
  • [http://www.linuxjournal.com/article.php?sid=6105 Obsolete Microkernel Dooms Mac OS X to Lag Linux in Performance] (LinuxJournal 2002-05-29)

  • [http://www.macslash.org/article.pl?sid=02/12/17/1923214&mode=nocomment Jordan Hubbard Answers Your Questions] (MacSlash 2002-12-17)

  • [http://www.kernelthread.com/mac/apme/optimizations/ Making An Operating System Faster] (kernelthread.com) . (10 Things Apple Did To Make Mac OS X Faster)

  • [http://www.kernelthread.com/publications/osxkernel/osxkernel.swf A tour of the Mac OS X Kernel] (kernelthread.com)

    • xnuカーネル(Mach由来が15%,BSD由来が25%,I/O Kit + ドライバが57%,その他が3%ほど)
      • プロセススケジューリング、メモリ管理はMach、ユーザ管理、ファイルシステム、ネットワーキングはBSD、デバイスドライバはI/O Kit
    • I/O Kitはオブジェクト指向デバイスドライバフレームワークで,Embedded C++ がベースになっている.
      • デバイスにアクセスする方法には、Mach IPC経由でI/O Kitに直接アクセスする方法(UserClient)と、BSDレイヤ経由でI/O Kitにアクセスする方法(BSDClient)がある。
      • プリンタやデジカメのドライバはユーザ空間で動いている。
    • プロセス管理.Mach スレッドと pthread は 1-to-1 mappingされる.
    • (ローカル)ファイルシステムはHFS+.VFSレベルでジャーナリングに対応している.fseventsと呼ばれるユーザ空間へのイベント通知機構がある.
    • initプロセスは存在しない.launchd (Tigerより前はmach_initだった).
  • [http://www.itconversations.com/shows/detail1804.html Mac OS X Internals] (IT Conversations) . Amit Singh氏へのインタビュー。

  • [http://www.itmedia.co.jp/enterprise/articles/0704/26/news009.html Undocumented Mac OS X] (ITmedia 連載記事)

  • [http://www.opendarwin.org/ OpenDarwin]

    • [http://slashdot.jp/mac/article.pl?sid=06/07/26/1211239 OpenDarwinプロジェクトが活動停止] (SlashdotJapan 2006-07-26)
  • [http://www.gnu-darwin.org/ GNU-Darwin] . 2003-01-11: 1.0 がリリースされたらしい.

    • [http://sourceforge.net/projects/gnu-darwin/ SourceForge]
  • [http://www.osnews.com/story.php?news_id=3757 Introduction and History of Darwin] (OSNews 2003-06-10)

  • [http://www.macosforge.org/ Mac OS forge]

    • [http://slashdot.jp/mac/article.pl?sid=06/08/08/1118234 AppleがMac OS Forgeを開設、Intel版カーネルソースなどを公開] (SlashdotJapan 2006-08-08) . OpenDarwinの代わりになるそうな.
  • [http://www.apple.com/macosx/bootcamp/ BootCamp] (Apple)

    • [http://slashdot.jp/mac/article.pl?sid=06/04/05/1332251 Apple、Intel MacでWindowsを動作可能にするツールのパブリック・ベータを公開] (SlashdotJapan 2006-04-05)
  • [http://www.macworld.co.uk/news/index.cfm?RSS&newsID=16269 'Apple didn't need NeXT' - Woz] (MacWorld 2006-10-25)

  • [http://journal.mycom.co.jp/news/2007/11/20/004/index.html Mac OS X Leopardが正式な「UNIX」に認定] (マイコミジャーナル 2007-11-20) . SUSv3取得。


  • Mach IPC

    • システムコールのようなタスクとカーネルの通信もMach IPC。
    • カット&ペーストもMach IPC。大きいデータはout of lineで渡される。
    • Mach IPCのアクセス権の授受はlaunchdが行なっている。
  • AppleScript

Clone this wiki locally