Похожие презентации:
Архитектура_macOS_Системное_программирование
1. Архитектура macOS
• Дисциплина: Системноепрограммирование
• Автор: студент 3 курса
• Тема: Архитектура операционной системы
macOS
2. Введение
• macOS — операционная система компанииApple Inc., основанная на UNIX.
• Происходит из NeXTSTEP (компания NeXT,
Стив Джобс).
• Первая версия — Mac OS X 10.0 Cheetah
(2001).
• Цель — мощь UNIX + удобство интерфейса
Apple.
3. Общая архитектура macOS
• macOS имеет многоуровневую архитектуру:1) Application Layer — пользовательские
приложения
2) Application Frameworks — Cocoa, Carbon,
SwiftUI, Metal
3) Core Services & Core OS — системные
библиотеки
4) Ядро — Darwin
4.
Архитектура Mac OS X5. Darwin — основа macOS
• Darwin включает:1) Ядро XNU (X is Not Unix)
2) BSD-компоненты (сеть, процессы, FS)
3) Device Drivers (I/O Kit)
4) Файловые системы: HFS+, APFS
5) Boot Loader
6. Ядро XNU
• Гибридное ядро: Mach + BSD• Поддержка SMP
• Использует I/O Kit для драйверов
• Работает в режиме ядра и пользователя
7. Подсистема Mach
Mach обеспечивает:1) Виртуальную память
2) Планирование потоков
3) Межпроцессное взаимодействие (IPC)
4) Абстракции: task, thread, port, message
8. Подсистема BSD
Реализует UNIX-функции:1) Пользователи, группы
2) Файловые дескрипторы
3) Сокеты, TCP/IP
4) POSIX-вызовы
Слой взаимодействия приложений с ядром
9. Подсистема I/O Kit
• Объектно-ориентированные драйверы(Subset C++)
• Горячее подключение устройств
• Динамическая загрузка
• Расширение без перезагрузки
• Иерархия классов
10. Графическая подсистема
• Quartz Compositor — отрисовка окон• Core Graphics (Quartz 2D) — 2D
• Metal / OpenGL — 3D и GPU
• Core Animation / Core Image — эффекты
• Плавный, стабильный интерфейс
11. Безопасность macOS
• Изоляция процессов• Code Signing
• Gatekeeper и Sandbox
• FileVault (шифрование)
• SIP — защита системных файлов
12. Заключение
• macOS — UNIX-система с гибридным ядромXNU
• Архитектура сочетает BSD и Mach
• Обеспечивает стабильность, безопасность и
удобство
• Darwin и XNU — база всей экосистемы
Apple
Программное обеспечение