Mac OS 的一点历史: Mac OS, Mac OSX 与Darwin

作为收购 NeXT 公司的结果,苹果公司获得了 NeXTSTEP 架构中的 Mach 和 Objective-C 等设计

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

  1. 作为收购 NeXT 公司的结果,苹果公司获得了 NeXTSTEP 架构中的 Mach 和 Objective-C 等设计。尽管 NeXTSTEP 本身已经不再发展了,但是其中的组件在 OS X 中获得了新生。事实上,可以将 OS X 看成是 Mac OS Classic 和NeXTSTEP 的融合,更准确地说,应该是后者慢慢地吸收了前者。这个转变并不是瞬间发生的,Mac OS 经历过一个名为Rhapsody 的临时操作系统,这个系统从未公布于众。然而,就是 Rhapsody 这个系统最终演化成了 Mac OS X 的第一个版本,而这个操作系统的内核也就是我们今天所熟知的 Darwin(中文名称:达尔文)。 

  2.  

    在所有操作系统里面,Mac OS X在设计上和实现上与NeXTSTEP最接近,甚至超过了苹果公司自己的OS 9。OS X的核心组件——Cocoa、Mach、IOKit、Xcode的Interface Builder以及很多其他组件——都直接来自于 NeXTSTEP。这两个极端的小众的操作系统——一个有着伟大的 GUI 但是设计糟糕,一个设计很棒但是 GUI 非常平淡——融合的结果就是一个比两者加起来都要流行得多的全新操作系统。 

    有时候人们会混淆 OS X 和 Darwin 这两个名词的定义以及两者之间的关系。下面来澄清一下:OS X 是整个操作系统的一个集体名称。根据下一章的讨论,这个操作系统由很多组件构成,

    Darwin 就是其中的一个组件。
    Darwin 是操作系统的类 UNIX 核心,本身由内核(kernel)、XNU(“X is Not UNIX”的缩写,这

    个缩写类似于 GNU 的递归式缩写)和运行时组成。Darwin 是开源的(iOS 中的 Darwin 是在 ARM 上的移植,这个Darwin则是不开源的,详见稍后的讨论),而OS X中的其他部分,即苹果公司提供的各种框架,不是开源的。 

     http://hovertree.com/h/bjaf/webfuzadu.htm

OS X 的版本和 Darwin 的版本之间有一个简单的关系。除了 OS X 10.0 对应 Darwin 1.3.x之外,其他的版本都服从以下简单的公式:

If (OSX.version == 10.x.y)Darwin.version = (4+x).y

因此,例如 Mountain Lion 的 10.8.0 版本对应 Darwin 12.0。Snow Leopard 的 10.6.8 版本对应 Darwin10.8。尽管看上去有点混乱,但至少是一致的。

推荐:http://www.cnblogs.com/roucheng/p/texiao.html 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120385.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • win10 任务栏锁定,win键没反应

    win10 任务栏锁定,win键没反应现象:之前用win10,换成win10专业版后,安装360优化系统,过了几天后突然发现任务栏好像被锁定一般,按windows键没有任何反应,任务栏打开的文件,图片等等右键也没有反应,讲道理应该有关闭选项的,再次检查发现日期点不开,看不到日历,音量键点了也没有反应。各种百度总之各种找原因都没有找到,直到看到一篇文章才解决问题,原来win10与win7的管理机制不同,不能关闭防火墙的。…

    2022年6月4日
    52
  • shadowrock端口被占用_打开端口失败怎么处理

    shadowrock端口被占用_打开端口失败怎么处理右键选择选项设置

    2025年8月29日
    7
  • IDE工具(14) idea创建JavaWeb项目(小白教程)[通俗易懂]

    IDE工具(14) idea创建JavaWeb项目(小白教程)[通俗易懂]创建项目第一步:finish之后,项目结构如下图所示第二步:在WEB-INF下新建classes和lib2个文件夹(Directory)配置项目第三步:配置javaclass字节码编译路径,点击第四步:配置jar包存放路径lib文件夹然后ok就好了classes和lib配置好之后发现颜色会出现变化第五步:配置Tom…

    2022年9月20日
    2
  • 利用Pycharm连接服务器[通俗易懂]

    利用Pycharm连接服务器[通俗易懂]利用Pycharm连接服务器前言当下,很多深度学习的模型需要高配置的设备来跑,本地的pc可能无法满足要求。所以就需要利用服务器来训练,但是在服务器上操作代码不是很方便。利用Pycharm可以在本地编写/修改代码,能够同步到服务器上,并且能直接在本地利用pycharm运行同步到服务器上的代码。非常的方便。-前提一台装有anaconda的服务器,本地装了专业版的pycharm。操作步骤步骤一:在pycharm上使用服务器的python环境用pycharm任意打开一个项目,从工具栏中选择Fil

    2022年8月29日
    3
  • c++贪吃蛇源代码 完整版

    c++贪吃蛇源代码 完整版c++实现贪吃蛇,完整源码文章结构:数据结构分析程序运行分析难点分析一点思考源代码总结数据结构分析:1.双向队列:这里我才用双向队列的数据结构存储蛇身节点(这里的蛇身节点我才用结构体来存储蛇身信息)(因为贪吃蛇的实现还是比较简单的,所以也只涉及到了这一种数据结构)程序运行分析程序开始用户随机按下w,a,s,d中任意按键开始游戏并且作为蛇运动的初始方向,然后进入循环持…

    2022年5月26日
    60
  • JMeter下载安装以及使用教程

    JMeter下载安装以及使用教程JMeter下载1、下载地址:https://jmeter.apache.org/download_jmeter.cgi2、下载后无需安装,解压后即可使用。解压后目录如下:3、打开JMeter中bin目录下面的jmeter.bat双击即可打开JMeter了,打开的时候会有两个窗口,Jmeter的命令窗口和Jmeter的图形操作界面,不要关闭命令窗口,打开界面如下:4、打开jmeter软件,发现显示的为英文,更改为中文步骤如下:点击菜单栏【Options】按钮然后依次单击【Cho

    2025年6月16日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号