\n'); } function setFlash(){ var myFlshObj = document.myFlash; var photoAlbum=document.getElementById('photoAlbum'); if(photoAlbum&&myFlshObj){ var awidth=0; awidth=parseInt(photoAlbum.offsetWidth); if(awidth<260) myFlshObj.height='150px'; if(awidth>=260 && awidth<350) myFlshObj.height='240px'; if(awidth>=350 && awidth<370) myFlshObj.height='305px'; if(awidth>=370 && awidth<550) myFlshObj.height='320px'; if(awidth>=550 && awidth<730) myFlshObj.height='455px'; if(awidth>=730) myFlshObj.height='590px'; } } function setAlbumUrl(name){ albumTypename=name; setFlash(); myFlash_DoFSCommand(null,"test"); } function showLoginWindow(ev){ var obj = document.getElementById("pop-login"); if(document.all){ obj.style.top = ev.clientY +'px'; obj.style.left = ev.clientX - 272 +'px'; } else{ obj.style.top = ev.pageY +'px'; obj.style.left = ev.pageX - 272 +'px' } obj.style.display ="block"; document.getElementById("pop-user-name").focus(); } function hideLoginWindow(){ document.getElementById("pop-login").style.display ="none"; } var blogID=getBlogID(); var UserName = ""; if(blogID!=null){ var tmpUserName=blogID.split("."); UserName=tmpUserName[0]; } function resize(obj){ if(window.event.srcElement.tagName == 'A'){ return; } obj.parentNode.childNodes[1].style.display = obj.parentNode.childNodes[1].style.display=='none' ? 'block': 'none'; obj.parentNode.childNodes[2].style.display = obj.parentNode.childNodes[2].style.display=='none' ? 'block': 'none'; } function tab(event){ var evt = (document.all)?window.event:event; if(evt.keyCode == 9){ document.getElementById("pop-password").focus(); return false; } else{ return evt.keyCode; } } function tab1(event){ var evt = (document.all)?window.event:event; if(evt.keyCode == 9){ document.getElementById("save").focus(); return false; } else{ return evt.keyCode; } } function tabTrack(event) { var evt = (document.all)?window.event:event; if(evt.keyCode == 9){ document.getElementById("pop-password-track").focus(); return false; } else{ return evt.keyCode; } }
Water or Ice ... It's up to my Stone
日志
要有足够的寒冷,因为在寒冷里活着是高贵的!
笔掭:又称笔砚,用于验墨浓淡或理顺笔毫,常制成片状树叶形。
臂搁:又称秘阁、搁臂、腕枕,写字时为防墨沾污手,垫于臂下的用具。呈拱形,以竹制品为多。
诗筒:日常吟咏唱和书于诗笺后,可供插放的用具。多以竹制,取清雅之意。
笔架:又称笔格、笔搁,供架笔所用。往往作山峰形,凹处可置笔。也有人物和动物形的,天然老树根枝尤妙。
笔筒:笔不用时插放其内。材质较多,瓷、玉、竹、木、漆均见制作。或圆或方,也有呈植物形或他形的。
笔洗:笔使用后以之濯洗余墨。多为钵盂形,也作花叶形或他形。
墨床:墨研磨中稍事停歇,因磨墨处湿润,以供临时搁墨之用。
墨匣:用于贮藏墨锭。多为漆匣,以远湿防潮。漆面上常作描金花纹,或用螺细镶嵌。
镇纸:又称书镇,作压纸或压书之用,以保持纸、书面的平整。常作各种动物形。
水注:注水于砚面供研磨,多作圆壶、方壶,有嘴,也常作辟邪、蟾蜍、天鸡等动物形。
砚滴:又称水滴、书滴,贮存砚水供磨墨之用。
砚匣:又称砚盒,安置砚台之用。以紫擅、乌木、豆瓣摘及漆制者为佳。
印章:用于钤在书法、绘画作品上,有名号章、闲章等,多以寿山石、青田石、昌化石等制成,也有铜、玉、象牙章等。
印盒:又称印台、印色池,置放印泥。多为瓷、玉质,有圆有方,分盖与身两部分。
前面已经提过文房四宝的特性及选取使用之法,现在进一步来将其互相配合,以求发挥功能的极限。古人常以健毫笔书写在笺纸上,以柔性的宣纸写也行,所以健毫笔可任意配纸。而弱吸墨的纸可以用健毫笔书写,使用柔毫笔亦可,所以弱吸墨纸类也可任意配笔。这种配法是纸与笔相合的原则,而柔毫笔与强吸墨的纸较为特殊的分法则如下:
强吸墨纸适合配健毫笔:强吸墨纸类以宣纸为代表,因为它吸墨性强,笔一碰触到纸,墨汁即迅速化开,若行笔略迟则笔画尽成墨团;而羊毫笔毛较软,行笔略急则墨汁不易渗透,字会虚浮无力,所以使用健毫笔写快方能配合强吸墨纸。两者配合,方能尽其所能。于师长卿论之,云:“用羊毫笔在宣纸上作字,那可就大非易事了。因为宣纸的吸墨性太强,墨一入纸,墨汁便沁入纤维,而且迅速渗开,笔的运行稍慢,纸上立呈漆黑一团,而羊毫柔软,运行稍即,即锋颖略纸面而过,立不能注于纸。”故强吸墨纸,唯选配健毫笔始能相合。
柔毫笔宜配弱吸墨滑纸:柔毫笔较软,不易发挥个人特色之雄挺刚毅,所以历代书法家多使用健毫笔,鲜有用柔毫笔之。其实,柔毫笔虽弱,只要选纸得当,亦可书写出极富姿媚含蓄的字。而柔毫笔以弱吸墨纸得当,以笺指为类,虽较宣纸脆而硬,且平滑吸墨性弱,但行笔放慢亦可使转自如。清代书法家如张照、梁同书、王文治皆善以羊毫笔书写于。其笺纸或绢上风格姿媚丰腴、温润含蓄,另创一格,于师长卿有言:“盖滑纸或绢,性不吸墨,墨沈落纸皆浮在面上,以羊毫之柔顺,写光滑之纸绢,使转运行,自极得心应手。”师言极是也!
健毫笔配浓墨:以笔沾触墨汁,笔墨之关系可想而知。大致使用健毫笔搭配浓墨,最能表现苍拔雄劲之笔力,王澍曾道:“墨须浓,笔需健,以健笔用浓墨,斯作字有力而气韵浮动。”此言甚是,前代书法家莫不以为然,清刘墉特以健毫浓墨着称,世有“浓墨宰相”之誉。淡墨柔笔并非书人特好之配合,但其实是别具特色的,富有姿媚之韵,王文治善于淡墨柔毫,世称之“淡墨探花”,也是极为适合的。
笔墨纸砚之调配:笔墨砚三者实是密不可分的,砚台中好的,若端正富光泽明亮,极易下墨与发墨。所谓“墨在砚中,随笔旋转”,“墨逾坚者,其恋石也弥甚”,其关系之密切可视而得知!工具若如手足般配合,必能使书法达到尽善尽美之境界也!
在家呆了十五天整,说长不长,说短也足足两周了,一年总共也不过五十多周。
心疼爸妈的辛苦劳碌,真不知道自己什么时候才能独立,更不清楚自己是不是真的有能力让他们过上安逸的舒坦日子。心里总是愧疚不安,所以害怕回家,怕面对他们的苦,真是个幼稚的逃避~
stone说我回到这里看起来不快乐,也是必然的吧~希望他不要误解。
再过几天又是妈妈的生日了,离开家的第四个年头仍然不能陪在她身边度过,我想妈妈心里会有这50大寿的遗憾,总之这是我的遗憾。
一年整了,突然要回家竟然有点紧张,真是不正常呢~
哦爸爸妈妈,我回来啦~
“为什么?为什么不跟人家去了?没说好么?为什么...?”
“没什么为什么啊,咱家一块多好啊~别人都没什么...”
这算什么?我算什么?我们之前说好的又算什么?
我只是个“别人”,而我们说好的,只是梦!
还怎么听得下去?!
知趣吧!走吧!都只是梦而已!
一到假期,就总是到处腐败,吃是免不了的项目,尤其像我们这么爱美食:)
早就跟我的Stone说好等他考完试请几个朋友搓饭,今天难得大家都有空,就约了去亚运村那边(他家在那里)。
终于去试了那个耳闻已久的“西贝莜面村”,果然很有特色,功夫鱼、大拌菜,和各种莜面主食都很不错。特别喜欢那些小面食的名字哈,前年去西北的时候就听过一些,去年在山西吃到了鱼鱼,不过是炒的,今天我们要的鱼鱼、窝窝、擦擦都是蒸的,名字和样子都好可爱,面香香甜甜的,筋道,跟店里配的羊汤也很合味。
虽然价格不菲,不过他们哥几个吃得都满意,而且环境和服务都还好,也就物有所值了。
酒足饭饱了,特别说一下店面吧。西北的乡土气息很浓,门面花花绿绿的,大红的灯笼,大红的窗花,大红的对联,大红的门牌,屋内也有各种民间剪纸装饰;红红火火的色调,跟深色的木质门窗隔断及桌椅陈设都协调,服务员的穿戴也是农家特色;桌椅除了木材讲究,样式也像是特别定制的(呵呵,我们这帮人里有学室内的,尤其关注啦),高度很舒适,有点像幼儿园里的感觉,矮矮的,但是很稳很精致,靠背角度也合适;餐具嘛~自然是我和Stone比较关注的啦,多数是白瓷的,形制上没有太多花哨的特别之处,不过都有朴素的青花装饰,茶具上还都贴了他们那个老虎剪纸形式的标志,另外许多菜品用的是玻璃器皿,比如那个经典的大拌菜,虽然蔡本身成本不高,但是黄黄紫紫红红绿绿的,用这么一个大大的玻璃器皿来装尤其出彩,几乎桌桌都有这么一大“盆”。
尽管是因为另一家北京特色的馆子客满我们才临时改在西贝的,不过还是很有收获,其实不在于吃得有多好(当然这里是不错呵呵),关键是给了我们这帮人一个亲切温馨的气氛,又能顺便感受一下西北风情,这大概也就是西贝莜面村一直这么火的一个原因吧。
可惜今天没喝奶茶和酸奶(我的挚爱呀),还好之前有张返券,明天跟Stone再去定慧桥的另外一家分店喽:)——又要腐败了呢~
第一章 系统技术
基础概述
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 还具备了与其它操作系统的高度协作性。
从功能上看,下面是 Mac OS X 最重要的各个组件:
·Aqua ,用以获得用户体验的人性化界面设计
· 应用程序环境( Carbon 、 Cocoa 、 Java 和 Classic )
· 视窗和图形系统,由 Quartz 实现(包括对 QuickTime 和 OpenGL 的支持)
·Darwin ,高级的、基于 UNIX 技术的操作系统核心
图 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 最引人注目的一个特点就是它的图标。在早期的操作系统中,图标的大小受到屏幕的分辨率的限制。随着现在的显示大小和分辨率水平的大大提高, Aqua 则摆脱了这种限制。它提供了具有丰富色彩和照片质量的图标,并可以将图标尺寸调节到 128x128 像素。 Aqua 图标也更具表现力,可以实现原位置文件预览等功能。
通过对屏幕布局规划的优化管理, Aqua 还改善了用户体验。不断产生的一个又一个窗口往往会打乱屏幕布局,特别是在显示较深结构的文件系统和多个控制面板时。 Mac OS X 通过将一个应用程序的各个活动项目集中在一个窗口中,解决了窗口大量增生的问题。
这种新的方法的最好的实例就是 Mac OS X 是如何处理一些像打开或打印文档这类普通程序的。即便您可能同时打开了多个文档,当操作系统显示打印或保存文档的对话框时,您也应该知道哪个对话框是对应哪个文档的。 Mac OS X 引进了一种新的对话框,叫做漂浮对话框( sheet ),它被附着在文档窗口上,这使它们的关系更为明确。漂浮对话框从窗口标题栏下方滑出,由于其半透明特性使得它们看起来似乎像是漂浮在文档窗口上的。漂浮对话框并不是模式化的,因此在漂浮对话框出现时用户仍然可以继续进行其它的操作。
一直以来, Mac OS 以其易用性受到了人们的青睐。 Aqua 中结合了很多 Macintosh 用户在他们的计算机中所期望获得的用户界面质量和特性。系统中几乎每个功能和特性都被赋予了易用性的特点。
Aqua 的许多效果都可由 Quartz (苹果公司开发的 2D 图形和视窗技术)来实现。
Finder:
大部分 Aqua 用户体验是来自于对桌面和 Finder 的设计, Finder 是一种作为与文件系统实现交互的主要界面的系统应用程序。用户有可能会注意到这个领域中的两大创新: Dock 和 Finder 显示文件系统各元素的方式。
Dock 减少了桌面的零乱。该屏幕区域掌管着所有您想要快速访问到的东西,如:文件夹、应用程序、文档、存储设备、最小化窗口、 QuickTime 影片、网站链接。图标用于标识 Dock 中存放的每一项内容;而这些图标对它们所代表的项目往往是一种很好的描述。例如,如果您有待读的新消息, Mail 图标会告诉您。如果您存放了一张图片, Dock 则会以预览图标的形式将其显示,这样不用您打开它就可以知道它是什么了。同时,因为您可以将正在运行的程序最小化到 Dock 中,通过快速浏览屏幕下端,您就可以知道当前正在运行哪些程序。要在任务间进行切换,只需点击您所要启用的程序或文件图标,它将成为新的活动任务。如果您不知道一个图标代表的是什么,可将鼠标移到图标上,文档、文件夹或程序的名称就会显示出来。
Dock 掌管了您所希望在那里保存的各种东西。当您添加项目时, Dock 会随之加长,直到达到屏幕的边缘。一旦到达这个点时, Dock 中的图标就会自动成比例收缩,以容纳下所添加的项目。不过,为了使小图标更加灵活, Mac OS X 包含了一种名叫放大的功能( magnification ):只需将指针移过图标,它们就会在您预置的水平上放大。
Mac OS X Finder 具有一个可包括在单个窗口中的简单导航界面。位于可配置工具栏中的直观控件可将您快速地带到电脑中最常使用的地方,如:您的个人目录 (home) 、您的应用程序、您的文档、甚至是您经常联系的人。 Finder 中显示的项目不仅仅是文件夹、程序和文档,还包括了其它一般较常用的项目,如:已装载的网络卷、外部存储设备、 CD - ROM 和数码相机等。
除了 Macintosh 用户非常熟悉的图标视图和列表视图外,每个 Finder 窗口还都可以被设置为叫作分栏视图的查看模式。这种模式对浏览深层次的文件系统是很理想的;在点击一个文件夹后,将在其右侧的下一个分栏内显示该文件夹的内容。分栏视图还可保留您的浏览历史记录,这样就可以使您总能找到以前的浏览路径了。
当您双击图标或列表视图中的 Finder 项目时, Finder 不会默认产生一个新窗口。取而代之的是, Finder 将在单一 Finder 窗口中替换原有的文件夹视图。(不过您可以更改默认动作。)作为一个关键性的设计目标,通过将文件系统集中到一个窗口中显示, Finder 减少了大量打开窗口的需要。尽管有这个默认动作,系统也不会阻止您根据需要打开多个 Finder 窗口。
在 Mac OS9 中, Finder 利用储存在文件中的文件类型和创建者代码来标识文件。 Mac OS X 中 Finder 能够通过文件的文件扩展名,以及它们的类型和创建者代码来标识文件。由于许多 Mac OS9 的用户习惯于那些没有扩展名的文件, Finder 提供了一种方法,使得通过 Finder 预置属性可以用来全局隐含文件扩展名,通过显示信息( Show Info )窗口可以用来逐个隐含文件扩展名。
当您安装 Mac OS X 开发软件包时,安装程序会将开发人员文档放置在四个位置:
■ 框架: 与框架紧密关联的信息通常被安装在框架中的一个本地化子目录中。这种打包方法可以确保当框架移动或拷贝到另一位置时,文档可随之移动。同时它也使拥有本地化的文档版本成为可能(尽管英文是目前唯一支持的本地化语言)。
■ 开发应用程序
应用程序支持:
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 具有以下几种访问辅助支持:
· 缩放功能可以让用户放大屏幕上的各个元素。
· 粘滞键可以让用户顺序按下一组合键,而不需同时按下,这样他们就能使用键盘快捷 键了。
· 鼠标键可以让用户用数字小键盘来替代控制鼠标。
· 全键盘操作模式可以让用户使用键盘来完成所有的动作,而不需使用鼠标。
· 语音识别可以让用户通过说话而不是键盘输入来提出指令。
· 文本语音转化( Text-to-speech )阅读功能可以帮助那些视觉上有障碍的人士进行文 本阅读。
除了其内嵌的支持,软件开发人员还可利用 Carbon 和 Cocoa API 来与其它应用程序进行访问辅助信息的通信。 Cocoa 控件通过执行 NSAccessibility 协议,可以与系统进行访问辅助信息的通信,而在 Carbon 中也提供了类似的支持功能。
AppleScript:
在 Mac OS X 中编写脚本,就像在 Mac OS 9 中一样,是采用 AppleScript 作为最主要的脚本语言,而以 Apple 事件作为通信模式的。您可以将特定的动作编进您的应用程序里去,这样它们就可以在接收到 AppleScript 命令时执行相应的动作了。 AppleScript 可支持所有的应用程序环境,也包括 Classic 兼容性环境。用户可以在不同的环境中编写将多种应用程序服务链接在一起的脚本。
在设计新的应用程序的时候,必须在较早期阶段就考虑 AppleScript 的支持问题,并仔细考虑您应用程序的数据结构。对 AppleScript 的支持,要求您以一种有效的方式来设计应用程序的数据结构,以方便人们使用脚本,并更易于让其它应用程序与您的应用程序进行快捷而有效的通信。
AppleScript Studio 是一个强大的开发工具,它被用于快速创建能够支持 Aqua 用户界面的 Mac OS X 本机应用程序。 AppleScript Studio 结合了来自 AppleScript 、 Project Builder 、 Interface Builder 和 Cocoa 应用程序框架的各种特性。有了 AppleScript Studio ,您就可以在一个全功能的开发环境中创建应用程序,并使用 AppleScript 脚本来控制应用程序中的大量 Cocoa 用户界面对象。
导入的应用程序服务:
同时在 Mac OS X 系统中运行的各程序不必在隔离的状态下运行。任何一个程序所提供的服务均可以和其它程序共享,任何程序如果对该项服务感兴趣,就可以利用它。服务菜单为程序提供了另一种共享资源和功能的方法。
各应用程序不必事先知道被提供了哪些服务。在用户选择一个应用程序中的一组数据(如一组文本、一个图像,或是代表着一个文件夹或文件的图标)时,用户可在服务菜单中所列出的应用程序内选择一个命令,该命令一经选择便开始执行,以调用第二方程序。
服务程序的工作就好象是用户从一个应用程序中将数据复制粘贴到另一个应用程序、然后修改数据,再将结果复制并粘贴回原来的应用程序中。例如,用户可以在 Finder 中选定一个文件夹,然后选择能将该文件夹压缩为一个压缩包格式的服务选项;这项操作的结果将被放回到原文件夹的相同位置。不过服务程序的动作也可以是单向进行的;例如,用户可以在文字处理文档中选定一个名字,然后选择一个能利用 LDAP 服务器查找名字的服务命令,继而启动一个电子邮件程序,打开一个新的消息窗口,在收件人一行中输入所找到的电子邮件地址。
用户体验和其它部分:
和 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:
Mach 位于 Darwin 的中心,因为它执行了一个操作系统中大量的最关键的功能。 Mach 所提供的大部分功能对于应用程序而言都是透明的。它管理着程序处理资源(如 CPU 的使用和存储)、处理日程安排、增强内存保护,并对非类型化的进程间通信(本地和远程)实现了一个以消息为中心的基础架构。 Mach 给 Macintosh 计算处理增加了很多重要的优势。
· 内存保护:一个操作系统的稳定性不应该依靠所有的执行程序都扮演着好 “ 公民 ” 的角色。内存保护不允许应用程序在彼此的(或系统的)地址空间内写入数据,而如果这样做往往会导致信息的丢失或毁坏,甚至可能使系统突然崩溃。 Mach 保证了一个应用程序不能写入另一个应用程序或操作系统的内存区域。通过各个应用程序间的彼此隔离以及与系统进程的隔离, Mach 可以使单个存在故障或缺陷的应用程序不至于会伤害到系统的其余部分。当然最好是,如果一个应用程序意外崩溃,也不会影响到系统的其余部分,这样您就不必为此重新启动机器了。
· 抢占式多任务处理:在现代操作系统中,多个进程有效地共享了 CPU 。 Mach 监控着计算机的进程、任务优先级,并确保活动水平处于最大值,保证每项任务都能得到其所需要的资源。 Mach 利用某种标准来判断一项任务的重要性,进而决定在安排另一项任务之前应给该项任务分配多少时间。您的进程并不会依靠另一进程放弃其处理时间,以获得自己的处理时间。
· 高级虚拟内存:和其它虚拟内存系统一样, Mach 维护着地址映射,以控制任务的虚拟地址与物理内存地址之间的翻译。一般来说,存在于一项任务的虚拟地址空间中的存对象的抽象来扩充了这些语义。命名内存对象可以使一项任务(在一个足够低的水平上)映射一段内存区域。取消对它的映射,就会把它发送给另一项任务。在同一系统内实现彼此分离的执行环境,这是操作系统所提供的基本能力。在 Mac OS X 中,虚拟内存始终是打开着的。
· 实时支持:该项功能保证了时间敏感的媒体应用程序对处理器资源的低延时访问。
Darwin 还可以实现协同式多任务,以及抢占式和协同式多线程。
BSD:
与 Mach 集成的是 BSD 操作系统(目前是 4.4BSD )的自定义版本。 Darwin 的 BSD 实现包括了 POSIX API 的许多功能,并将其导入到系统的应用层。 BSD 充当了 Mac OS X 的文件系统和网络工具的基础。另外,它还提供了几种编程界面和服务,包括:
· 进程模式(进程 ID 、信号,等等)
· 基本安全策略,如,用户 ID 和权限
· 线程支持( POSIX 线程)
·BSD 套接字
设备驱动程序支持:
对于设备驱动程序的开发, Darwin 提供了一种面向对象的框架结构,叫作 I/O Kit (输入 / 输出工具箱)。 I/O Kit 不仅简化了 Mac OS X 驱动程序的编写过程,而且为这些驱动程序提供了所需要的很多基础结构。 I/O Kit 是用 C++ 的受限子集中编写的。这一框架可支持大范围的设备种类,它是模块化的,也是可扩展的。
用 I/O Kit 创建的设备驱动程序很容易得到下面几种重要功能:
· 真正的 “ 即插即用 ”
· 动态设备管理( “ 热插拔 ” )
· 电源管理(台式和便携式)
网络扩展:
Darwin 为内核开发人员提供了一种在操作系统添加网络功能的新技术 -- 网络内核扩展 (Network Kernel Extensions , NKE) 。 NKE 工具允许您创建网络模块,甚至是可在内核中动态装载(或卸载)的完整协议栈。 NKE 还使得自动配置协议栈成为可能。
NKE 模块具有监控和修改网络通信的内嵌功能。在数据链接和网络层,它们还可以接收来自设备驱动程序的同步事件通知,如在网络接口的状态发生变化时。
文件系统:
Darwin 的文件系统组件是在 BSD 和增强型虚拟文件系统( VFS )的基础上设计扩展而来的。文件系统组件引进了几种新的综合功能:
· 可移动存储介质的访问权限。此功能是基于每个已连接的可移动设备(包括 USB 和 FireWire 设备)注册在系统中的一个全局唯一的 ID 号。
· 基于 URL 的卷装载,它可以让用户(通过一个 Finder 命令)装载诸如 AppleShare 和 Web 服务器之类的东西。
· 统一的高速缓存,与虚拟内存的高速缓存所一致。
· 长文件名( 255 个字符或 755 个字节,基于 UTF - 8 )。
· 支持逐个隐藏文件的后缀扩展名。
由于其多元化的应用程序环境和对各种不同设备的支持, Mac OS X 必须能够在多种标准卷格式下处理文件数据。它所支持的格式如下
所支持的本地卷格式:
Mac OS 扩展格式 又叫扩展分层式文件系统( Hierarchical File System Plus ),或 HFS+ 。这是 Mac OS X 中的默认根目录和引导卷格式。 HFS 的扩展版本通过减少单个文件的最小容积而优化了大型硬盘的存储能力。它还是 Mac OS 9 的标准卷格式。
Mac OS 标准格式 又叫分层式文件系统( Hierarchical File System ),或 HFS 。这是 Mac OS 8.1 以前的 Mac OS 系统中的卷格式。 HFS ( HFS+ 也一样)将资源和数据存在一个文件的不同分支中,并使用了包括类型和创建者代码在内的多种文件属性。
UFS 一种 " 平 " (即,单个分支)的磁盘卷格式,基于与大部分 UNIX 操作系统的标准卷格式相类似的 4.4BSD FFS ( Fast File System 快速文件系统),支持 POSIX 文件系统语义,这对很多服务器应用程序来说都是很重要的。
UDF DVD 卷的通用光盘格式( Universal Disk Format )
ISO9660 CD - ROM 卷的标准格式
HFS 和 HFS+ 卷支持替身( aliases ),而 UFS 卷支持符号链接( HFS +和 UFS 都支持硬链接)。虽然替身和符号链接都是对文件系统中其它位置的一个文件或目录的轻量级引用 -- 它们在语义上有着显著的区别。这些描述和其它区别请参见 “ 文件系统 ” 一章。
注: Mac OS X 不支持文件系统设计中的堆栈。
因为 Mac OS X 企图在异构网络中实现部署,以将多个完全不同的系统连为一体,所以它也支持多种网络文件服务器协议。列出了这些协议:
支持网络文件协议:
AFP 客户端 Apple 文件协议,是 Mac OS 9 系统中主要的文件共享协议(只能在 TCP/IP 上传输)。
NFS 客户端 网络文件系统,是 UNIX 世界的主导文件共享协议。
WebDAV 基于 Web 的分布式创作和版本控制( Web-based Distributed Authoring and Versioning ),一种 HTTP 扩展,允许在网络上的协作文件管理。
Samba SMB/CIFS ,一种用于 Windows 和 UNIX 系统的文件共享协议。
一些文件系统功能可扩展为 Mac OS X 的所有可写卷格式。
Darwin 和开放源码开发:
苹果公司是将开放源码开发作为操作系统发展策略的关键部分的首家主要计算机公司。作为开放源码技术, Darwin 成为了该项策略的关键部分。苹果公司已向开发人员社团发布了几乎所有 Darwin 组件的源代码。
Mac OS X 内核环境是 Darwin 的子集。内核环境包括了 Darwin 中除了构成 BSD 命令环境的基本 BSD 库和命令之外的所有内容。
考研终于结束了,真是一段漫长而煎熬的日子。
眼见身边有朋友放弃,我并不叹息,因为放弃并不意味着退缩,这只是一种选择,在放弃一者的同时也许选择了一片更宽广的天地,一片能让她们更接近理想的天地。至少,她们勇敢地选择了,她们知道什么是自己想要的。
还有更多的朋友仍坚守着信念,为了考研这个既迫近又遥远的目标坚持着,有时命运就是如此,所有转折都决定于那些短暂的片段,一次偶遇、一个冲动,甚至一张考卷、一句言语……
我只有祝福,祝福我亲爱的朋友们在她们各自选择的路上追寻到成功和幸福。
带了这么多天课,今天第一次十一点之前回来了,说辛苦其实也可以很轻松,不过还是很累,一方面是强迫自己做现在不想做不值得做而且做不好的,是比较挣扎的事情;一方面也是自己太容易进入一种角色,很投入地陪着那些孩子面临高考,把他们的压力也传给了自己,每天晚上蹬着自行车顶着寒风回来的时候,才开始回到自己的状态,开始意识到自己的生活好像在这段时间里空白了,而理想总是离现实如此之遥远。
下午临时被老师叫回学校来帮忙做点事情,晚饭又跟师兄长谈了很久,无外乎专业,无外乎生活和事业...很多激情和冲动又一下子膨胀起来,也许不该为那些一时的困扰耗费精力和时间,该休息一下了,想想那些该想的...狭隘是一件很可怕的事情!
时间完成了自然的过渡,悄悄跨入新的一年。
重温一年前的日志,难免又要感叹时间的飞逝,如同就在昨天,但又能分明地感到这一年来的经历所带来的自己内心的变化。尤其近三个月,几乎了结了过去三年多的所有付出和过失,也使许多曾经少不经事的不以为然一一呈现出各自的玄机,才恍然大悟那些被忽略的是非琐碎对后来会产生如此不可逆转的影响,一切原来早已注定,在每一次不经意中埋下伏笔。
无论好坏,无论是不是自己所期待的,都已然成立了,并且显现出清晰的脉络,无情地揭穿着所有自私的卑劣和愚蠢的无知,当然也同样真实地陈述着那些可贵的情谊中洋溢的真挚和坚定,曾给了我如此大的鼓励和支持。。所有这些,决定了我此后两年(至少两年)的选择,哦也许并非我的选择,只是生活一路走来,悄悄地选择了我,选择了成为我的征途。
我该做什么了?很迟疑,仿佛很被动。我等待一些什么来给我昭示吧~也许已近在眼前了,我的路。。
最新评论
个人资料
日历
我的音频
统计
统计中,请等候...
统计中,请等候...