Darwin 是一种Unix-like操作系统,整合数种的技术,包含开

Darwin LOGO

放原始码的XNU核心,一种以微核心为基础的核心架构来实作Machkernel。操作系统的服务和userland 工具是以4.4BSD(柏克莱软件套件的UNIX),特别是FreeBSDNetBSD) 为基础类似其他Unix-like 操作系统Darwin 也有对称多处理器的优点,高效能的网络设施和支援多种整合的档案系统。

通常来说,大多数的计算机制造商都把自己的操作系统(以及大多数的应用程序)看作是私人拥有不会公开的。将源代码向外界开发人员免费提供是为了鼓励所有的开发人员都来修正其中的问题,对其进行改善。在Darwin之外,OS X还包括了自己的用户接口所有权,以及其他一些没有提供开源的特性。
 
 
整合Mach microkernel到XNU核心的好处是可携性,或者是在不同形式的系统使用软件的能力。举例来说,一个操作系统核心整合了Mach microkernel,能够提供多种不同CPU架构的二进制格式到一个单一的档案 (例如 x86 和 PowerPC),这是因为它使用了Mach-O的二进制格式。Mach 整合的缺点则是增加了操作系统核心-kernel- 的复杂度。在过去的microkernel实作上,这种复杂度有时候会导致很难分离kernel 效能的问题。因此,采用Mach microkernel会伴随风险,但它有潜在的好处是广泛的可携性。以Darwin 可携性的具体例子来说,在2005年6月,苹果电脑宣布它会于2006年 在 Mac 电脑上开始采用 ntel 处理器。
 
 
1、下载并安装虚拟机软件(本人使用vmware6.0)
2、下载苹果OS的kernelDarwin
3、启动vmware,新建一台虚拟机
必须注意以下几点:
1)新建步骤中Virtual Machine configuration选择第二项Custom;
2)Guest操作系统类型选择windows NT;
3)分配给虚拟机虚拟硬盘应大于3G,选择IDE类型,并钩选预分配选项。
4、从2中下载的Darwin是压缩包,先解压成ISO文件。
5、更改已创建的虚拟机的参数,CDROM选择iso镜像(指向磁盘中放步骤4的iso文件的位置)
6、关键步骤:
1)启动虚拟机;
2)选择1将Darwin安装在第一个硬盘;
3)选择2手动分区;
4)输入Y初始化分区表
5)在fdisk#提示符下输入如下4个命令:
fdisk#auto hfs (to automatically create partitions using the HFS+ filesystem)
fdisk#update (otherwise it won't boot after installation)
fdisk#write
fdisk#quit
6)回答系统的其他问题(询问Root安装位置时照抄即可)
7)重启系统(屏幕出现"error: nknown filesystem type:" 时直接回车不用理睬)
8)重启后仍是选择1——第一块硬盘;
9)因为之前已经分区,所以这次出现自动分区和手动分区之外的第三个选项:使用已存在分区,选择3;
10)如同上次安装步骤一样回答系统提问,之后可以看到OS包解压安装的过程,而后重启;
11)启动时快速按下F2键进入虚拟机的bios,修改启动优先次序,改为硬盘第一。
 
 
 

如果您愿意花几块钱请我喝杯茶的话,可以用手机扫描下方的二维码,通过 支付宝 捐赠。我会努力写出更好的文章。 
(捐赠不显示捐赠者的个人信息,如需要,请注明您的联系方式) 
Thank you for your kindly donation!!


About darwin OS的更多相关文章

  1. os模块sys模块-sys.argv命令行参数

    提供对操作系统进行调用的接口 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于s ...

  2. python之platform模块

    python之platform模块 ^_^第三个模块从天而降喽!! 函数列表 platform.system() 获取操作系统类型,windows.linux等 platform.platform() ...

  3. EOS搭建

    http://mp.weixin.qq.com/s/RcDFCFCWpMIIAshJMqkxxw ,地址实效,请关注公众号 一下引用,只是技术记录交流 目前来讲,学习任何EOS相关技术的资料都来自ht ...

  4. rocketmq那些事儿之入门基础

    分布式消息队列中间件作为高并发系统的核心组件之一,能够帮助业务系统解构提升开发效率和系统稳定性,其复杂性可见一斑,作为核心组件,有必要去深入了解学习 前言 分布式消息队列中间件主要具有以下优势: 削峰 ...

  5. Cocos2dLua3.17.2集成FairyGUI之 lua绑定 (二)

    上一章中将fairyGUI集成到C++工程,由于本人使用的是cocoslua,还需要将C++的绑定到lua中使用,本章记录一下过程,由于是过了一段时间,有些步骤忘记了,大概记录一下,诸位大大做个临时参 ...

  6. iOS Hook

    HOOK 译为"钩子"或挂钩.在 iOS 逆向中指改变程序运行流程的一种技术. iOS 中 hook 技术的几种方式 Method Swizzle 利用 OC 的 Runtime ...

  7. 【工具】 memtester内存压力测试工具

    作者:李春港 出处:https://www.cnblogs.com/lcgbk/p/14497838.html 目录 一.简介 二.Memtester安装 三.使用说明 四.测试示例 一.简介 mem ...

  8. 分布式消息队列RocketMQ(一)安装与启动

    分布式消息队列RocketMQ 一.RocketMQ简介 RocketMQ(火箭MQ) 出自于阿里,后开源给apache成为apache的顶级开源项目之一,顶住了淘宝10年的 双11压力 是电商产品的 ...

  9. ansible 四常用模块

    常用模块 Ansible默认提供了很多模块来供我们使用.在Linux中,我们可以通过 ansible-doc -l 命令查看到当前Ansible支持哪些模块,通过 ansible-doc -s [模块 ...

随机推荐

  1. [Leet Code]Path Sum

    很简单一道题,搞错了N次,记录一下. public class Solution { private int currSum = 0; public boolean hasPathSum(TreeNo ...

  2. Spring Boot中扩展XML请求和响应的支持

    在Spring Boot中,我们大多时候都只提到和用到了针对HTML和JSON格式的请求与响应处理.那么对于XML格式的请求要如何快速的在Controller中包装成对象,以及如何以XML的格式返回一 ...

  3. 技术范儿的 Keep 发力AI赛道,为什么“虚拟教练”会更懂你?

    http://www.tmtpost.com/3363367.html 摘要: 虚拟教练技术会整合到一些业务场景和硬件产品中收费,但是收费的具体情况彭跃辉还暂未透露. 图片来源于Unsplash 自去 ...

  4. 每天一个linux命令(7):whereis 命令

    whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b).man说明文件(参数-m)和源代码文件(参数-s).如果省略参数,则返回所有信息. 和find相比,whereis查找的速度非 ...

  5. vue中的filters的用法

    1.效果 金额保留两位小数,并加上单位元 2.index.html <!DOCTYPE html> <html lang="en"> <head> ...

  6. CORS跨域、Cookie传递SessionID实现单点登录后的权限认证的移动端兼容性测试报告

    简述 本文仅记录如标题所述场景的测试所得,由于场景有些特殊,且并不需兼容所有浏览器,所以本文的内容对读者也许并无作用,仅为记录. 场景.与实现 需在移动端单点登录 需在移动端跨域访问我们的服务 基于历 ...

  7. 如何使用IDEA开发工具中右键中的Git图形化工具

    首先,你的项目一定是git服务器上面down下来的,下面来演示如何使用IntelliJ IDEA 开发中在鼠标右键中提供的一个非常方便的图形化Git管理工具: 这里使用的IDEA开发工具的版本是 In ...

  8. Java获取此次请求URL以及服务器根路径的方法

    http://www.jb51.net/article/71693.htm ********************************************** 本文介绍了Java获取此次请求 ...

  9. refiling失败报错Invalid function: org-preserve-local-variables

    refiling失败报错Invalid function: org-preserve-local-variables,原因: elc,不太清楚 解决办法: 删除org??目录下的elc文件 https ...

  10. java中编码种类和区别

    为什么要编码 不知道大家有没有想过一个问题,那就是为什么要编码?我们能不能不编码?要回答这个问题必须要回到计算机是如何表示我们人类能够理解的符号的,这些符号也就是我们人类使用的语言.由于人类的语言有太 ...