Mac OS X既是以往Macintosh操作系统的重大升级,也是对其的一种自然演化。它继承了Macintosh易于操作的传统,但其设计不只是让人易于使用,同时也更让人乐于使用。
作为下一代操作系统,Mac OS X是一种综合技术的产物。在其所覆盖的技术中,一部分是来自于计算机业界的新技术,而大部分则是标准技术。它完全是建立在现代核心操作系统的基础上的,这使Macintosh获得了内存保护和抢占式多任务等计算处理能力。Mac OS X有着绚丽多彩的用户界面,具备了如半透明、阴影等视觉效果。这些效果,连同在个人电脑上看到的最清晰图形,都可以利用苹果公司专门为Mac OS X开发的图形技术来获得。
不过Mac OS X有的不仅仅是精密的内核与精巧的外形。凭借着多元化的应用程序环境,各种类型的Macintosh应用程序都可以在此操作系统中得以运行。而凭借着对多种网络协议和服务的支持,Mac OS X成为了网上冲浪的终极平台。又由于其对多种磁盘卷格式的支持,并符合各种现有和发展中的标准,Mac OS X还具备了与其它操作系统的高度协作性。
图2-1描述了这些组件间的总体从属关系。本章的其余部分说明了Mac OS X的这些组件以及其它技术所提供的功能。
用户体验:
Mac OS X的用户环境与Mac OS的早期版本相似,不过在一些重要方式上仍存在区别。这些区别表现在用户界面设计、软件界面本地化构建以及增加应用程序功能的方式等方面。而在导出和访问其它应用程序服务的机制上,Mac OS X也有所增强。
当然,Mac OS X上的用户体验受益于由这种操作系统核心所带来的好处。(参见“Darwin”)。即使在一个程序崩溃时,Macintosh计算机也一样能保持稳定,单个的应用程序或任务不能独占进程资源;而应用程序可并发执行。
本章节描述了Mac OS X给用户所带来的操作体验,以及那些使之能增加效率和令人愉快的功能和应用。
Aqua
在苹果公司设计Aqua--Mac OS X的图形用户界面时,设计思想的目标是:创造一种不仅易用,而且比您所见过的任何Mac OS更具吸引力的现代操作系统(参见图2-2的屏幕快照)。正如“aqua”这个单词让我们所联想到的,水的属性充斥了Mac OS X的清透外表。Aqua以它的色彩、深度、清澈、透明和动感给电脑带来了生命的活力。按钮看起来象是刨光了的蓝宝石,激活的按钮会呈现出脉动般的闪烁,窗口有着带有层次感的阴影,最小化窗口还会象魔鬼落入瓶子一样落入它们的Dock图标中。
通过对屏幕布局规划的优化管理,Aqua还改善了用户体验。不断产生的一个又一个窗口往往会打乱屏幕布局,特别是在显示较深结构的文件系统和多个控制面板时。Mac OS X通过将一个应用程序的各个活动项目集中在一个窗口中,解决了窗口大量增生的问题。
这种新的方法的最好的实例就是Mac OS X是如何处理一些像打开或打印文档这类普通程序的。即便您可能同时打开了多个文档,当操作系统显示打印或保存文档的对话框时,您也应该知道哪个对话框是对应哪个文档的。Mac OS X引进了一种新的对话框,叫做漂浮对话框(sheet),它被附着在文档窗口上,这使它们的关系更为明确。漂浮对话框从窗口标题栏下方滑出,由于其半透明特性使得它们看起来似乎像是漂浮在文档窗口上的。漂浮对话框并不是模式化的,因此在漂浮对话框出现时用户仍然可以继续进行其它的操作。
Dock掌管了您所希望在那里保存的各种东西。当您添加项目时,Dock会随之加长,直到达到屏幕的边缘。一旦到达这个点时,Dock中的图标就会自动成比例收缩,以容纳下所添加的项目。不过,为了使小图标更加灵活,Mac OS X包含了一种名叫放大的功能(magnification):只需将指针移过图标,它们就会在您预置的水平上放大。
Mac OS X Finder具有一个可包括在单个窗口中的简单导航界面。位于可配置工具栏中的直观控件可将您快速地带到电脑中最常使用的地方,如:您的个人目录(home)、您的应用程序、您的文档、甚至是您经常联系的人。Finder中显示的项目不仅仅是文件夹、程序和文档,还包括了其它一般较常用的项目,如:已装载的网络卷、外部存储设备、CD-ROM和数码相机等。
Mac OS X用户体验部分是操作系统的不同组件间的无缝交互。从BSD到QuickTime,Mac OS X包含了各种在历史上存有很大差异的技术,且基于不同的标准和约定。单一Mac OS X系统可以控制不同格式的卷,支持不同的网络文件共享协议,并可运行基于完全不同API的应用程序。
Mac OS X为用户和开发人员提供了简易的过渡方式。Mac OS X支持四种应用程序环境,每一种环境都适合一种特定的程序类型:
·Classic 环境可运行大部分的Mac OS9程序。因为Classic是一种兼容性环境,它不支 持一些Mac OS X特性,如Aqua或由Darwin所提供的增强核心架构。
·Carbon环境可运行所有经过Mac OS X代码优化的Mac OS9程序。通过将它们的代码转换 为使用Carbon API,程序开发人员可以确保程序有效地利用Darwin的内存保护、抢占 式多任务处理和其它特性。
· Cocoa环境提供了一个先进的面向对象框架,用来创建最佳的下一代应用程序。
·Java环境可运行100%纯JAVA和混合API Java应用程序及Java applet。
Mac OS X可以复制(或剪切)几乎任何数据片,并将之粘贴到在另一个环境中运行的程序上。它还可以在大部分的环境之间拖动Finder对象(以及它们所代表的数据)。另外,如当一个存储在Mac OS Extended (HFS+) 卷上的文件复制到一个UFS卷上时,Mac OS X还会执行必要的转换。
Mac OS X应用程序打包可以使多个可执行应用程序在同一个目录中并存,而这个目录对用户来说就好象是一个可以双击的文件。这个目录里包括了可执行程序所需要的资源(如图像文件、声音文件、本地化字符串、插件、私有库和共享库)。有了这个方案,您就可以在Mac OS X和Mac OS 9系统中安装相同的应用程序包,而用户可以启动并使用这个应用程序。因为一个应用程序包包括了所有需要在多个系统上执行的东西,某些高级功能变得很容易就能实现,如在远程服务器上执行一个应用程序、在互联网上分发应用程序和简化安装、卸载的过程。
多用户
用户可在Mac OS X系统的个人自定义环境中工作。他们可以选择特定的桌面样式、优先语言、自动启动的应用程序和许多其它功能。无论何时用户登录到自己的帐户上,他们所有的选择都可以被恢复。
一个用户的个性化环境有可能成为这样一种环境。其他用户可以登录到同一台计算机,并在计算机环境中设定完全不同的一套预置属性。Mac OS X确保了一个用户的数据和程序与其它用户的数据和程序的安全隔离。每个帐户都是受密码保护的,没有所有者的允许,用户不能在其他用户的文件夹中执行程序、编辑或者读取文档。系统为每个用户的文件夹(及其所有内容)提供了一套默认的访问权限,用户也可以在以后更改权限,以限制或允许其他用户的访问。
比这种单机(本地机)/多用户模式功能更强大的是多机/多用户模式--即网络帐户,Mac OS X通过其NetInfo网络管理系统实现了这种可能性。人们可以使用连接到他们的NetInfo网络的任何一个Mac OS X系统--可以是一个家庭计算机、一个便携式计算机或者是在朋友家里的一个系统--来远程登录到他们的帐户。不管用户最后一次是用的哪台计算机登录的,登录后,都可以在一个与他们最后一次退出时非常相似的环境中工作。同时,如果一个网站管理得当,他们在那台服务器上的信息就会和在本地维护的数据一样安全,如果服务器上的文件能定期备份的话,也许会更加安全。
Mac OS X的预置系统非常灵活,足以支持任何远程和本地访问的组合。有了它,用户和管理员就可以根据每个用户、每台机器和每个应用程序的情况来设置多套预置参数。
国际化:
Mac OS X使软件国际化更为容易。它的做法是:一个单一的二进制程序可以支持多种语言和地方方言的本地化。它还可以让软件开发人员为新语言或方言动态添加本地化资源。
Mac OS X包括了能处理在世界范围内使用的文字系统的综合技术。该文字系统提供了Unicode编码标准、输入法和常的规文字处理服务。在Mac OS X系统中,大部分的软件都是以束的形式来组织的,一个应用程序只有一种类型(参见“应用程序支持”)。束是文件系统中的一个隐含目录,包含一个或更多的可执行程序和这些可执行程序的附带资源。束最主要的好处在于它们提供了本地化软件的底层构造。对用户来说,一个束被显示成一个可被双击或从一个文件夹拖到另一个文件夹的单一文件对象。
本地化资源(如图像文件、字符串文件)和Mac OS 9风格的资源(.rsrc)都可放在束中的子目录内,这些子目录的目录名对应了一种特定的语言或方言(如加拿大法语)。一个恰当构建的Mac OS X应用程序(插件或共享库)不会在这些目录里面对这些资源文件进行硬连接。而是,当应用程序需要一个资源的时候,它会利用一种特定的系统路径去获得能够最佳匹配用户所选语言的本地化资源。
访问辅助:
成千上万的人有着某种类型的残障或特殊需要,美国联邦法规规定政府或教育部门使用的计算机必须能够让残障人士使用。Mac OS X包括了为有特殊需要的人士设计的内嵌功能,它也为软件开发人员提供了能满足他们在自己的应用程序中获得访问辅助的功能。
在Mac OS X中编写脚本,就像在Mac OS 9中一样,是采用AppleScript作为最主要的脚本语言,而以Apple事件作为通信模式的。您可以将特定的动作编进您的应用程序里去,这样它们就可以在接收到AppleScript命令时执行相应的动作了。AppleScript可支持所有的应用程序环境,也包括Classic兼容性环境。用户可以在不同的环境中编写将多种应用程序服务链接在一起的脚本。
和Mac OS以前的版本一样,Mac OS X的用户体验在其CD-ROM盒子被打开时就开始了。安装是一项简单的任务,设置助理可以让用户进行快速地启动、运行,和连接互联网。如用户有任何疑问,可以用Help Viewer来查找答案。
Mac OS X将互联网集成到日常的计算机使用中。用户很容易就可以访问互联网并可以将喜欢的网站地址收藏保存,用于以后的访问。作为一个特色,Sherlock可以用来搜索互联网或内联网,以及搜索本地文件系统(包括通过内容索引来进行查找)。另外,Mac OS X还包括了一个强大而简单至极的完全基于互联网标准的电子邮件应用程序。
Darwin:
在迷人、易用的界面下,Mac OS X有着一个基于UNIX的稳固基础,并具有稳定性、可靠性和性能优越的特点。其基础是一个核心操作系统,通常人们称之为Darwin,这是一种开放源码技术,该技术可在www.apple.com/darwin找到。Darwin集成了大量的技术,最重要的是Mach 3.0、基于4.4BSD (伯克利软件发行) 的操作系统服务、高性能网络工具、和对多种集成文件系统的支持。因为Darwin的设计是高度模块式的,您可以动态添加如设备驱动程序、网络扩展和新文件系统之类的东西。
要了解关于Darwin的详细资料,请参见“nside Mac OS X:Kernel Programming(内核编程)和Inside Mac OS X: I/O Kit Fundamentals(I/O 工具箱基础)”。这些书在苹果公司的网站:http://developer.apple.com/techpubs/macosx/Darwin 中可以找到。
·高级虚拟内存:和其它虚拟内存系统一样,Mach维护着地址映射,以控制任务的虚拟地址与物理内存地址之间的翻译。一般来说,存在于一项任务的虚拟地址空间中的存对象的抽象来扩充了这些语义。命名内存对象可以使一项任务(在一个足够低的水平上)映射一段内存区域。取消对它的映射,就会把它发送给另一项任务。在同一系统内实现彼此分离的执行环境,这是操作系统所提供的基本能力。在Mac OS X中,虚拟内存始终是打开着的。
·实时支持:该项功能保证了时间敏感的媒体应用程序对处理器资源的低延时访问。
Darwin还可以实现协同式多任务,以及抢占式和协同式多线程。
BSD:
与Mach集成的是BSD操作系统(目前是4.4BSD)的自定义版本。Darwin的BSD实现包括了POSIX API的许多功能,并将其导入到系统的应用层。BSD充当了Mac OS X的文件系统和网络工具的基础。另外,它还提供了几种编程界面和服务,包括:
Thanks.作者: Aki 时间: 2004-03-01 11:45 标题: 苹果开发人员技术文档连载之-系统技术 图形和图像:
Mac OS X结合了Quartz、QuickTime和OpenGL-三种最强大的图形技术-提升了Macintosh的绘图能力,这超越了以往在桌面操作系统上所见到的一切。Mac OS X的二维图形和图像功能都是基于Quartz-一种Apple技术,它提供了一个视窗服务器、基本的低级服务以及一个使用PDF(可移植文档格式)作为内部模式的图形渲染库。集成到这种基础上的是一种打印架构和其它图形库,如QuickDraw和QuickTime。
Quartz:
Quartz是一种强大的绘图系统,能产生丰富的图像模型、高速渲染、抗锯齿和制作PostScript图形。Quartz还为Mac OS X实现了视窗系统,以及提供了些低级服务,如:事件处理和指针管理。另外,Quartz也提供了以PDF作为图形显示内部模式的渲染和打印工具。
Mac OS X中包括了Apple对OpenGL高度优化的实现,它将OpenGL作为了3D图形的系统API和库。OpenGL是一种用于开发可移植3D图形应用程序的行业规范标准。OpenGL是当今最为广泛采用的图形API标准,通过编写可移植的OpenGL代码,可生成非常一致的视觉效果。它是专门为游戏、动画、CAD/CAM、医学成像和其它需要丰富和强壮的2D、3D可视化框架的程序而设计的。OpenGL的Mac OS X版可非常一致地产生高质量和高性能的图形图像。
QuickTime的最新版本被打包在Mac OS X中。QuickTime是一个强大的用于处理、增强和存储视频、音频、动画、图形、文本、音乐,甚至是360度虚拟现实的多媒体技术。它还允许您制作数字视频流,数据流可以被实况广播或录制存储。QuickTime是跨平台的技术;除了Mac OS X,它还可以在Mac OS 9、Windows95、Windows98、Windows NT和Windows2000中运行。
Mac OS X的打印系统是基于和Mac OS以往版本完全不同的架构上的。它可用于所有的应用程序环境中。在根据Quartz的功能指令来绘图时,打印系统会发出一个风格一致的人机界面,这样就可以让打印机厂商在一个较短的周期内完成开发。它允许应用程序在“虚拟页面”中进行绘图,并在打印时把这些页面映射到物理页面上,以断开绘图页面和打印页面之间的连接。打印系统还为应用程序提供了在打印对话框中高度控制用户界面元素的功能。
Apple字体解决方案(Apple Type Solution,ATS)是系统范围对字体进行管理、布局和渲染的引擎。有了ATS,用户就可以拥有单一的一组字体,它们被分布在文件系统的不同部分,甚至是在网络上。ATS使所有的客户机获得相同的字体设置。通过统一合并一些高成本的操作,如合并字体数据和渲染字形,就能使整个系统的性能受益于字体渲染和布局的集中化。ATS可支持很多不同的字体格式,包括TrueType、PostScript Type1和PostScript OpenType。
通过采用Mac OS X插件模式,开发人员获得一种简单、标准的插件架构,而不再需要自定义架构。插件可以带来一种逐渐增加而又有效的功能实现,可以在不需要改变源代码的基础上创建一个应用程序的自定义版本。因为是独立的模块,插件可以帮助开发人员隔离和修正软件中的BUG。它们还可以让第三方开发人员在不与原开发人员打交道的情况下,就实现程序的增值。
·AppleTalk是一套基于Macintosh标准的网络协议,可以与其它网络系统(如互联网)相结合。Mac OS X包括了对传统AppleTalk环境和解决方案的最低兼容性支持。
·Open Transport作为输入/输出系统的一部分,实现了工业标准的通信和网络协议。它有助于开发人员在他们的应用程序中整合网络服务,而不必担心针对任何具体网络的通信细节。
Mac OS X是一种强大、易用的桌面操作系统,同时也可以作为强大的服务器解决方案的基础。一些企业或组织拥有小型网络,它们受益于路由器的服务。Mac OS X为这种情况提供了IP路由支持。有了IP路由,一台Mac OS X机器就可能充当一个路由器,甚至可作为互联网的网关。路由信息协议(RIP)就是用来实现这项功能的。
Mac OS X还允许多重连接(multihoming)和IP别名。有了多重连接,一台主机就可以在同一或不同网络中物理连接到多个数据链路。IP别名可以让网络管理员给单个网络接口指定多个IP地址。这样一台运行Mac OS X的计算机就可以给多个网站提供服务,就好像是有多台服务器一样。
个人文件服务和Web服务:
个人Web共享,同时也是Mac OS 9的一个特色功能,它允许用户在内部网络中与其他用户共享信息,而无论他们的计算机是什么类型或所使用的是什么浏览器。最基本地,它让用户能够设置自己的内部网站。Apache-互联网上最流行的网络服务器,作为系统的HTTP服务被集成到操作系统中。运行个人Web共享服务器的主机必须连接到TCP/IP网络。
高级硬件特性:
Mac OS X为目前普遍使用的大部分基于标准的硬盘和附加设备提供了驱动程序。例如,它给IDE和SCSI磁盘驱动器提供了支持和驱动程序,并支持大量的Apple显示器。Mac OS X还包括了一些其他特性,如:针对台式和便携式系统的电源管理。
本章节的剩余部分讨论了Mac OS X的一些高级硬件特性。要了解本书中与硬件有关的信息,请参见“介质类型”、“文件系统”和“网络扩展”。要了解硬件支持的详细资料,请参见“Mac OS X”所附带的安装指南。
USB:
USB(通用串行总线)是在计算机和附加设备(如音频播放器、操纵杆、键盘、电话、扫描仪和打印机)之间进行连接的高速即插即用接口。它支持每秒12兆位的数据速率。USB允许用户在自己的计算机添加新设备,而不必安装适配卡,也不必在安装时关机。Mac OS X包括了用来驱动下列类型设备的USB驱动程序。
支持Velocity Engine是Mac OS X的另一个重要特性。Velocity Engine提升了应用程序并行处理数据的性能,如执行3D图形成像、图像处理、视频处理、音频压缩和基于软件的移动电话等。Quartz、QuickTime和QuickDraw目前都已整合了Velocity Engine的功能;这样,任何使用这些API的程序都可不经任何修改,就享受到Velocity Engine所带来的性能提升。另外,由于Mac OS X SDK中包含了一个带有Velocity Engine支持的C/C++编译器,所以您还可以充分利用Velocity Engine来创建新应用程序。
AirPort:
AirPort是Apple的无线网络技术,可实现在本地局域网的多台计算机间,以及在该局域网与互联网间进行快速可靠的通信。有了AirPort,几个用户可以同时在线,同时在网上冲浪、接收电子邮件、玩游戏和交换文件,而全部用户访问只需要通过一个互联网服务帐户。AirPort还可以通过无线方式,将文件从您的计算机传输到150英尺外的另一台装配AirPort的iBook、iMac、PowerBook或Power Mac G4上。