Darwin n Darwin n OS X n Finder

  • Slides: 24
Download presentation

Darwin とは? n Darwinに含まれるもの n アプリケーション OS X 独自 カーネル n Finder n n

Darwin とは? n Darwinに含まれるもの n アプリケーション OS X 独自 カーネル n Finder n n Aqua Classic n Cabon 基本ライブラリ n Cocoa n Core. Services n コマンドライン ツール ライブラリ Darwin カーネル IOKit BSD Machカーネル Lib. C Open. SSL, zlib コマンドラインツール n n n Mach BSD UNIX IOKit ls, cat, tcpdump GCC, bison, flex. . . Core. Service ( の一部 ) n Core. Founation n Open. Directory n Rendezvous

Darwin の入手方法 n Apple Developer Connection からダウンロード n Apple ID の入手 n n n

Darwin の入手方法 n Apple Developer Connection からダウンロード n Apple ID の入手 n n n Apple Developer Connection. Mac Apple. Store i. Tunes Music Store APSL の承認 Open Darwin 等からダウンロード n n n http: //www. oopendarwin. org http: //www. gnu-darwin. org etc. . .

Demo - download

Demo - download

Demo - build

Demo - build

Demo - mount_webdav

Demo - mount_webdav

Demo - mount_webdav (1) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded

Demo - mount_webdav (1) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded * now lets get past the prefix for the uri we will put in the inode * cache */ cache_uri = &decoded_dir_ref[strlen(_WEBDAVPREFIX)]; after_dir_ref_hostname = &cache_uri[strlen(_WEBDAVPREFIX)]; after_dir_ref_hostname = strchr(after_dir_ref_hostname, '/');

Demo - mount_webdav (2) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded

Demo - mount_webdav (2) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded * now lets get past the prefix for the uri we will put in the inode * cache */ #define _WEBDAVPREFIX “http: //” cache_uri = &decoded_dir_ref[strlen(_WEBDAVPREFIX)]; after_dir_ref_hostname = &cache_uri[strlen(_WEBDAVPREFIX)]; after_dir_ref_hostname = strchr(after_dir_ref_hostname, '/'); strlen(_WEBDAVPREFIX) == 7 7文字スキップ cache_uri http: //water. local/dir 01/subfolder/ http: //water/dir 01/subfolder/

Demo - mount_webdav (3) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded

Demo - mount_webdav (3) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded * now lets get past the prefix for the uri we will put in the inode * cache */ #define _WEBDAVPREFIX “http: //” cache_uri = &decoded_dir_ref[strlen(_WEBDAVPREFIX)]; after_dir_ref_hostname = &cache_uri[strlen(_WEBDAVPREFIX)]; after_dir_ref_hostname = strchr(after_dir_ref_hostname, '/'); strlen(_WEBDAVPREFIX) == 7 cache_uri 7文字スキップ after_dir_ref_hostname http: //water. local/dir 01/subfolder/ http: //water/dir 01/subfolder/

Demo - mount_webdav (4) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded

Demo - mount_webdav (4) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded * now lets get past the prefix for the uri we will put in the inode * cache */ cache_uri = &decoded_dir_ref[strlen(_WEBDAVPREFIX)]; after_dir_ref_hostname = &cache_uri[strlen(_WEBDAVPREFIX)]; after_dir_ref_hostname = strchr(after_dir_ref_hostname, '/'); cache_uri after_dir_ref_hostname http: //water. local/dir 01/subfolder/ http: //water/dir 01/subfolder/

Demo - mount_webdav (6) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded

Demo - mount_webdav (6) /* Either way, decoded_dir_ref contains a full uri, utf 8_decoded * now lets get past the prefix for the uri we will put in the inode * cache */ cache_uri = &decoded_dir_ref[strlen(_WEBDAVPREFIX)]; //after_dir_ref_hostname = &cache_uri[strlen(_WEBDAVPREFIX)]; after_dir_ref_hostname = strchr(cache_uri, '/'); cache_uri after_dir_ref_hostname http: //water. local/dir 01/subfolder/ http: //water/dir 01/subfolder/

Demo - Bug. Reporter

Demo - Bug. Reporter

See Also n Apple Developer Connection n n Darwin トップページ n n http: //developer.

See Also n Apple Developer Connection n n Darwin トップページ n n http: //developer. apple. com/darwin/tools/cvs/howto. html Bug. Reporter n n http: //developer. apple. com/darwin/ CVS を使ったソースアクセス HOWTO n n http: //developer. apple. com/ja/ http: //developer. apple. com/bugreporter/ Open. Darwin n http: //www. opendarwin. org/