OS X. Layer.

각 Layer가 무엇인지 알아봅니다!

Posted by MinJun on Saturday, April 28, 2018 Tags: Realm Swift   4 minute read

Introduction

Mac 소프트웨어 개발을 위한 다양한 가능성을 소개하고 소프트웨어 개발에 사용할수 있는 기술과 정보 소스를 제공하고 설명합니다.

OS X의 Layers

시스템의 하위 계층은 모든 소프트웨어가 의존하는 기본 서비스를 제공합니다. 그 다음 계층은 아래 계층을 구축(보완) 합니다.


낮은 레이어 일수록 제공하는 서비스가 더욱 전문화 됩니다. 일반적으로 상위 계층의 기술은 공통 애플리케이션의 동작을 제공하기 위해 하위 수준 기술을 통합합니다.

  • Cocoa(Application) / Cocoa Touch: 유저 이벤트 응답, 앱의 행동을 관리하기 위한 유저 인터페이스가 포함됩니다
  • Media: 실행(Playing), 기록, 시청각 미디어 편집, 2D, 3D 랜더링을 위한 전문화된 기술이 집약되어 있습니다.
  • Core Services: 많은 기초(Fundamental)서비스와 기술, ARC(Automatic Reference Counting), CPU, GPU의 연산 등을 포함하고 있습니다.
  • Core OS: Core OS 계층은 프로그래밍 영역과 관계된 하드웨어, 네트워킹 CPU,GPU 연산같은 높은 수준의 연산과 관계된 것들을 정의합니다.
  • The Kernel and Device Drivers: 해당 계층은 Mach kernel 환경으로 되어있고 BSD(Berkeley Software Distribution) 라이브러리 기능(libSystem), 다른 낮은 계층의 구성요소들로 구성되어 있습니다. 파일시스템, 네트워킹, 보안, 프로세스간 소통, 프로그래밍 언어, 디바이스 드라이버, 커널 확장등의 지원을 포함합니다.

Cocoa Layer / Cocoa touch Layer

  • Cocoa Application Layer
  • High-Level Features
    • Notification Center
    • Game Center
    • Sharing
    • Resume
    • Full-Screen Mode
    • Cocoa Auto Layout
    • Popovers
    • Software Configuration
    • Accessibility
    • AppleScript
    • Spotlight
    • Ink Services
  • Frameworks
    • Cocoa Umbrella Framework
    • AppKit
    • Game Kit
    • Preference Panes
    • Screen Saver
    • Security Interface
  • Reference

2012년 문서기준입니다 ㅠㅠ

  • Cocoa Touch Layer
  • High-Level Features
  • Auto Layout
  • StoryBoards
  • Documents support
  • Multitasking
  • Priniting
  • UI State Preservation
  • Apple Push Notification Service
  • Local Notification
  • Gesture Recognizers
  • Peer-to-Peer Services
  • Standard System View Controllers
  • External Display Support
  • Cocoa Touch Frameworks
  • Address Book UI Framework
  • Event Kit UI Framework
  • Game Kit Framework
  • iAd Framework
  • Map Kit Framework
  • Message UI Framework
  • Twitter Framework
  • UIKit Framework

Media Layer

  • Media Layer
  • Supported Media Formats
  • grahpics Technologies
    • Graphics and Drawing
    • Cocoa Drawing
    • Metal
    • Other frameworks for Graphics and Drawing
      • Core Graphics
      • Core Animation
      • SceneKit
      • OpenGL
      • GLKit
      • Text, Typography, and Fonts
    • Images
    • Color Managerment
    • Printing
    • Audio Technologies
    • Video Technologies
  • Media Layer Frameworks
    • Application Umbrella Frameworks
      • Core Grahpics
      • Core Text
      • Image I/O
      • AV Foundation
      • ColorSync
      • Core Audio
      • GLKit
      • Instant Messaging
      • OpenAL
      • OpenGL
      • Quartz
      • Image Kit
      • Quartz Composer
      • Quick Look UI
      • Quartz Core
      • Core Animation
      • Core Image
      • QuickTime Kit
      • Scene Kit
    • Other Media Layer Frameworks
      • Audio Video Bridging(AudioVieeoBriding.framwroks)
      • Core Media
      • Core Media I/O
      • Core Video
      • Disc Recoding
      • DVD Playback
      • Image Capture Core
      • Video Toolbox: Video Toolbox
  • Reference

Core Service Layer

  • Core Service Layer
  • High-Level Features
    • Social Media Integration
    • iCloud Storage
    • CloudKit
    • File Coordination
      • Bundle and package
    • internationalization and Localization
    • Block Objects
    • Grand Central Dispatch
    • Bonjour
    • Security Services
    • Maps
    • Address Book
    • Speech Technologies
    • Identity Services
    • Time Machine Support
    • Keychain Services
    • XML Parsing
    • SQLite Database
      • Notification Center
      • distributed Notifications
    • Core Serivce Frameworks
    • Core Services Umbrella Frameworks
    • Accounts
    • Address Book
    • Automator
    • Core Data
    • Event Kit
    • Foundation and Core Foundation
    • Quick Look
    • Social Framework
    • Store Kit
    • WebKit
    • Other Frameworks in the Core Services Layer
      • Collaboration
      • Input Method Kit
      • Latent Semantic Mapping
  • Reference

Core OS Layer

  • Core OS Layer
  • High-Level Features
    • Gatekeeper
    • App Sandbox
    • Code Signing
  • Core OS Freamwork
    • Accelerate
    • Disk Arbitration
    • OpenCL
    • Open Directory(Directory Services)
    • System Configuration
  • Reference

Kernel and Device Drivers Layer

  • Kernel and Device Drivers Layer
  • High-Level Features
    • XPC Interprocess Communication and Services
    • Cachhing API
    • In-Kernel Video Capture
  • The Kernel
    • Mach
    • 64-Bit Kernel
    • Device-Driver Support
    • Network Kernel Extensions
  • BSD
    • IPC and Notification Mechanisms
      • File System Events
      • Kernel queues and kernel events
      • BSD notifications
      • Sockets and ports
      • Streams
      • Pipes
      • Shared memory
      • Apple event
    • Network Support
      • Standard Network Protocols
    • Network Technologies
    • Network Diagnostics
    • File-System Support
    • Security
    • Scripting Support
    • Threading Support
    • X11
    • Software Development Support
    • Binary File Architecture
    • Hardware Architectures
    • 64-Bit Support
    • Object File Formats
    • Debug File Formats
    • Runtime Environments
    • dyld Runtime Environment
    • Language Support
  • Reference

Cocoa, Cocoa Touch 차이점

https://stackoverflow.com/questions/2297841/cocoa-versus-cocoa-touch-what-is-the-difference


여담

iOS Technology Overview 문서가 2012년에 작성된 문서내요 ㅠㅠ 혹시 공식문서 주소 알고 계시면 알려주시면 정말 감사하겠습니다!


Reference

Mac Technology Overview
iOS Technology Overview