macOS 的系统与软件

0x00 前言

折腾了 Windows 很多年,后来出于个人开发需求转投 Mac,使用起来一直很顺手。现在也开始从顺手开始到了解更深一点的东西。

0x01 系统安全架构

1.1 系统架构概述

非开发人员分层:

  • User Experience
    • Aqua
    • Dashboard
    • Spotlight
    • Dock
    • 输入法
    • 屏保
    • 辅助功能
    • 语音
    • 位置与地图
    • 搜索
    • etc
  • Application Framework
    • Cocoa
  • Graphics and Media
    • 核心框架,OpenAL,Quartz,SceneKit,SpriteKit
  • Darwin
    • 系统内核与 Shell 环境

开发人员分层:

  • Cocoa Layer: Cocoa 框架层 包括了用于开发界面程序的框架集合。
  • Foundation Layer: 提供了程序开发室使用到的基础数据类型、数值处理、网络、IO 和 日期等
  • Media Layer: 提供了图像、声音、视频、动画及游戏开发需要的接口
  • Core Service Layer: 系统安全、底层内部数据访问以及存储接口。比如 AddressBook,CoreData,QuickLook 用于快速浏览插件开发。CoreFoundation 框架也属于这一层。
  • Core OS Layer: 加速器,蓝牙,异常处理,网络扩展,系统配置
  • Kernel & Driver Layer: 内核与驱动层。包括开发设备驱动程序与内核扩展所需的一些框架。

应用程序是一个 bundle 文件,一般为 xxx.app 文件夹,

1.1 一些常用软件

Clang
LLVM

HT Editor

1
brew install ht

0x02 前言

0x03 前言

0xEE 参考链接

  • macOS 软件安全和逆向分析

ChangeLog:

  • 2017-12-20 初始化本文
  • 2018-02-10 添加笔记