操作系统的发展史及其特点——MAC OS篇(转贴)
1984年,苹果发布了System 1,这是一个黑白界面的,也是世界上第一款成功的图形化用户界面操作系统。System 1含有桌面、窗口、图标、光标、菜单和卷动栏等项目 其中令如今的电脑用户最觉稚嫩而有趣的是创建一个新的文件夹的方法——磁盘中有一个Empty Folder(空文件夹),创建一个文件夹的方法就是把这个空文件夹改名;接着,系统就自动又出现了一个Empty Folder,这个空文件夹就可以用于再次创建新文件夹了。当时的苹果操作系统没有今天的AppleTalk网络协议、桌面图像、颜色、 QuickTime等丰富多彩的应用程序,同时,文件夹中也不能嵌套文件夹。实际上,System 1中的文件夹是假的,所有的文件都直接放在根目录下,文件根据系统的一个表被对应在各自的文件夹中,文件夹的形式只是为了方便用户在桌面上操作文件罢了。在随后的十几年风风雨雨中,苹果操作系统历经了System 1到6,到7.5.3的巨大变化,苹果操作系统从单调的黑白界面变成8色、16色、真彩色,在稳定性、应用程序数量、界面效果等各方面,苹果都在向人们展示着自己日益成熟和长大的笑脸。从7.6版开始,苹果操作系统更名为Mac OS,此后的Mac OS 8和Mac OS 9,直至Mac OS 9.2.2以及今天的Mac OS 10.3,采用的都是这种命名方式。
2000年1月,Mac OS X正式发布,之后则是10.1和10.2。苹果为Mac OS X投入了大量的热情和精力,而且也取得了初步的成功。2002年,苹果电脑公司的创建者之一,苹果公司现任执行总裁Steve Jobs亲自主持了一个仪式:将一个Mac OS 9的产品包装盒放到了一个棺材中,正式宣布Mac OS X时代的全面来临!
从苹果的操作系统进化史上来看,Mac OS Panther(以下简称Panther)似乎只是苹果操作系统一次常规性的升级,可是,事实果真如此吗?在下结论以前,先让我们一起来看一个事实: 2003年的WWDC(苹果全球开发商大会),这一历来在5月中下旬举行的会议,因为要为开发商提供Panther Developer Preview(开发商预览版),而专门推迟到了6月!一个月的等待并没有让用户失望,在每年都令无数苹果迷期盼的Jobs主题演讲中,我们听到了比以往多得多的掌声。
2003年10月24日,Mac OS X 10.3正式上市;11月11日,苹果又迅速发布了Mac OS X 10.3的升级版本Mac OS X 10.3.1。或许在本文发表之际,Panther就可以升级到10.3.2了。苹果公司宣称:“Mac OS Panther拥有超过150种创新功能,让你感觉就像拥有一台全新的苹果电脑”。
Mac OS X所具有的优点:
1、多平台兼容模式
Java 从来未体验过这种好处,所有的 Java 软件和程序使用 Aqua,用于 Mac OS X 时呈现了令人惊奇的表观效果和感受。视窗得到双倍缓冲,滚动翻页更为平稳,用户界面单元也相应尺寸可调。所有的绘图工作都由 Quartz Extreme 完成,这项 Mac OS X 以 PDF 为基础的成像模式得到了硬件加速,在更好的性能之外,还提供了清晰的文本和图形。
2、为安全和服务做准备
Java 是成为优秀的服务器方案的主要构成之一。那也是 Java 作为用于 Xserve 的 Mac OS X 服务器软件系统的重要组分的原因。另外,Xserve 包含了 Tomcat, 一款基于 JSP 和 Servlets 用于开发简单的 Java 软件的大众化的服务器。如果这还不够, Xserve 还包含有全部 WebObjects 的 Java 应用软件服务器的配置许可证明,这样您就能正确地从寄存器配置经典网络应用软件了。同时能有效执行的 J2EE 还包扩了 Macromedia 的 Jrun 和开放式资源的 JBoss 服务器。
3、占用更少的内存
在其他平台上,每一项 Java 软件都会消耗一定的系统内存,因此结束运行多重 Java 软件可能占用更多的内存资源。其他语言是使用共享库来解决这一问题的,比如 C 或 C++。苹果公司则发明了一种创新技术,在多重软件交叉运行时可以共享 Java 代码。这样就减少了 Java 软件通常占用的内存量。这种技术完全适合 Sun 公司的 Hot Spot VM,并使 Mac OS X 保持与标准版 Java 的兼容。另外,苹果公司还将其交付 Sun 公司予以实施,使其能配置在其他平台上。这只不过是苹果公司支持标准化和共享以使全行业都受益的例证之一。
4、多种途径的开发工具
在 Mac OS X 上有很多种方法可以 develop Java 软件。使用许多行业领先的工具都能实现,包括 IntelliJ 的 IDEA,Oracle 的 JDeveloper, Eclipse 和 Sun 的 NetBeans 等 ,可以说有很多。Mac OS X 也包含有支持从寄存器进行 Java 快速开发的免费开发工具。 补充一点点, 早些时候还有一些操作系统可用, 那时候用苹果机(88年), 我记得用的是CP/M系统, 我还用过一个, 可惜实在想不起名字了。
wikipedia上讲的比较清楚点
Mac OS是一套运行于苹果Macintosh系列电脑上的操作系统。Mac OS是首个在商用领域成功的图形用户界面。Macintosh组包括比尔·阿特金森(Bill Atkinson)、杰夫·拉斯金(Jef Raskin)和安迪·赫茨菲尔德(Andy Hertzfeld)。现行的最新的系统版本是Mac OS X v10.5版。关于Macintosh是如何被开发和潜在创意的起源,有许多种观点。历史记录里把Macintosh和施乐公司(Xerox)帕洛阿尔托研究中心 (PARC)的Alto计划联系在一起,伊凡·萨瑟兰(Ivan Sutherland)的画板(Sketchpad)和道格·英格巴特(Doug Engelbart)的在线系统(On-Line System)对其早期贡献产生了不小的影响。另见GUI的历史和苹果对微软的诉讼。
Mac OS可以被分成操作系统的两个系列:
* 一个是老旧且已不被支持的“Classic”Mac OS(系统搭载在1984年销售的首部Mac与其后代上,终极版本是Mac OS 9)。采用 Mach 作为内核,在OS 8以前用“System x.xx”来称呼。
* 新的Mac OS X结合BSD Unix、OpenStep和Mac OS 9的元素。它的最底层建基于Unix基础,其代码被称为Darwin,实行的是部分开放源代码。
Classic Mac OS
“classic”Mac OS的特点是完全没有命令行模式,它是一个100%的图形操作系统。预示它容易使用,它也被指责为几乎没有内存管理、协同式多任务(cooperative multitasking)和对扩展冲突敏感。“功能扩展”(Extensions)是扩充操作系统的程序模块,譬如:附加功能性(例如:网络)或为特殊设备提供支持。某些功能扩展倾向于不能在一起工作,或只能按某个特定次序载入。解决Mac OS的功能扩展冲突可能是一个耗时的过程。
Mac OS也引入了一种新形的文件系统,一个文件包括了两个不同的“分支”(forks)。它分别把参数存在“资源分支”(resource fork),而把原始数据存在“数据分支”(data fork)里,这在当时是非常创新的。但是,因为不能识别此系统,这让它与其它操作系统的沟通成为挑战。
Mac OS 9 使用 B+ 树结构的文件系统进行文件管理. ……
Mac OS X
主条目:Mac OS X
为了挽救这种情况,Mac OS X使用基于BSD Unix的内核,并带来Unix风格的内存管理和先占式多工(pre-emptive multitasking)。大大改进内存管理,允许同时运行更多软件,而且实质上消除了一个程序崩溃导致其它程序崩溃的可能性。这也是首个包括“命令行”模式的Mac OS,除非执行单独的“终端”(terminal)程序,否则你可能永远也见不到。但是,这些新特征需要更多的系统资源,按官方的说法Mac OS X只能支持G3以上的新处理器(它在早期的G3处理器上执行起来比较慢)。Mac OS X有一个兼容层负责执行老旧的Mac应用程序,名为Classic环境(也就是程序员所熟知的“蓝盒子”)。它把老的Mac OS 9.x系统的完整拷贝作为Mac OS X里一个程序执行,但执行应用程序的兼容性只能保证程序在写得很好的情况里在当前的硬件下不会产生意外。
Mac OS 技术
* QuickDraw:首个供应大众市场所见即所得的成像模型
* Finder:浏览文件系统和执行应用程序的界面
* MultiFinder:首个支持多任务软件执行的版本
* Chooser:访问网络资源的工具(例如:开启AppleTalk)
* ColorSync:确保颜色匹配的技术
* Mac OS内存管理:在转到UNIX前管理Mac内存和虚拟内存的方式
* PowerPC模拟执行Motorola 68000:Mac处理从CISC到RISC结构转变的方式(请看Mac 68K模拟器)
* 桌面附件:在MultiFinder 或System 7出现前,与其它软件协作运行的小“助手”软件。 B+树文件管理,双缓冲实现平滑滚动。这些东东俺在国内还用win2000的时候就用过了。win98就已经是抢先多任务了。2.6内核也早就抢先多任务了。其实win98实现兼容DOS实模式的技术也很cool,跟现在Xen虚拟机的原理一样的。Mac最大贡献大概是发明了鼠标吧。。操作系统内核技术已经早就成熟了。大家都是互相抄。要说处于领先地位的也应该是Linux,OpenSolaris这些。 Mac是拿 伯克利大学的系统BSD 加以改造直接用的, 从操作系统内核的效率和安全性来说BSD还是比现在的普遍型NIX要高不少。
不知道macos是否很好的保持了BSD的架构和传统?
BSD系统出来可是有些年头了, 如果我没记错是80年之前的东西。 包括上面说的solaris, 虽源于unix, 但在开发过程中, 大量学的BSD的代码来用, 好像sun 还专门出来说过一次, 感谢bsd团队之类的话。
以上写的, 是很久以前用solaris时候, 老师讲得, 没有考证过, 记得他说BSD才是unix系统的精华, 希望macos这基于BSD的系统能做得更好一些。
页:
[1]