iOSのインタビュー - システムアーキテクチャ

イオスは、単純に4層に分かれています。

  1. UI層:メイン踏み台/スポットライト犬層
  2. アプリケーションフレームワーク層:ココアタッチ構成を含みます
  3. コアフレームワーク層は、オープンGL、オープンES、マルチメディアコンポーネントを
  4. drawin層:オペレーティング・システムのコア、及びコアがXNUシェル構成XNUを有します

我々の焦点は、層をdrawinされるコアは、以下のコア要素を含むXNUカーネルです。

  1. BSDユーザモード、
  2. Machカーネルモード
  3. libkernのC ++のライブラリ
  4. IOKitの図書館:外部デバイスドライバ

BSD:これは、外側コアマッハステーション、ユーザ・モードで配置されています。

1. 建立pthread 线程模版,后续的线程都是基于他的;
2. 网络协议栈(BSD Socket API),上层的CFSocket都是基于bsd 的api标准进行开发;
3. 文件系统访问,上层的处理文件操作都是根据此机制进行的;

マッハ:カーネルのコアにあります

1. 进程和线程的抽象层,后续的进程、线程操作都是基于它进行;
2. 任务调度
3. 虚拟内存管理
4. 负责进程和线程之间的通讯

iOSのセキュリティメカニズム

  1. コード署名:SSLを使用したアプリケーションのソースを検証するために、発行者の秘密鍵を通じて公衆に署名し、認証し、それが送信中に改ざんされているかどうか
  2. 分離メカニズム(サンドボックス):信頼できないアプリケーションが別々の区画で実行する必要があり、室内には、「ブラックリスト」スタイル、すべての操作が制限されますが、この環境では、実際に隔離された環境であります操作方法は、既知の危険を防止し、かつ唯一のリストだけを制限する十分な効果を持っているとき、
  3. 資格:動作のみで安全であることが知られているものを可能にする、より厳しいサンドボックス、「ホワイトリスト」アプローチは、他のすべての操作は、「ブラックリスト」アプローチに採用現在サンドボックス機構を交換することはできません

ます。https://www.jianshu.com/p/89437cc788e7で再現

おすすめ

転載: blog.csdn.net/weixin_34183910/article/details/91053616