加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.0577zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

基于UNIX的操作系统内核——脚本支持、多线程支持、X11、二进制文件架构、硬件

发布时间:2022-10-19 14:31:41 所属栏目:Unix 来源:转载
导读: 脚本支持
Darwin支持Unix系统上常用的脚本语言。除了命令行工具(如bash和csh)以外,Darwin还支持Perl,Python,Ruby等等。
在Mac OS X 10.5中,新支持了Ruby on Rails。Mac OS X还支持在

脚本支持

Darwin支持Unix系统上常用的脚本语言。除了命令行工具(如bash和csh)以外,Darwin还支持Perl,Python,Ruby等等。

在Mac OS X 10.5中,新支持了Ruby on Rails。Mac OS X还支持在Python和Ruby脚本中添加Cocoa类(称为scripting bridges),详情请看 。

多线程支持

Mac OS X支持多线程编程。多线程提高了多任务的并行性,提高了应用程序的灵活性,降低了由繁重任务的延迟和多进程的高资源消耗,提高了多CPU计算机的效率。但多线程编程需要好的协调能力以确保程序正确,用户需要仔细分析自己的需要和程序以免适得其反。

用户级别的线程都是基于POSIX线程的。POSIX线程是Mach线程的包装。你可以在Cocoa,Carbon或Java程序中使用pthread接口操作POSIX线程。更多信息,请参阅, 。

X11

为了兼容性,Mac OS X支持X11,并可以选择安装。X11是一种UNIX下的窗口环境,许多UNIX应用程序使用它编写程序。

二进制文件架构

Mac OS X设计灵活,单个二进制文件可以支持32位和64位应用程序,也可以支持Intel和PPC不同硬件架构。

硬件架构

Mac OS X开始引入时,使用的是32位的PowerPC硬件架构。Apple使用Intel芯片后,Mac OS X增加了对32位Intel硬件的支持。Mac OS X 10.4增加了对64位架构的部分支持。Mac OS X 10.5之后,有4种硬件架构被支持:

?32位 Intel(i386)

?32位 PowerPC(ppc)

?64位 Intel(x86_64)

?64位 PowerPC(ppc64)

对单个二进制文件支持所有的硬件架构不是必须的。但推荐应用程序支持Universal Binary,即同时支持32位的Intel和PowerPC架构,在硬件条件允许时,也推荐支持64位架构。

程序库可能被链接到多个应用程序中。要让应用程序支持多架构,程序库也要支持多架构。所以使用多架构的程序库可以使程序保证跨平台性。

不同架构具有不同的规范,尽管差异微小,但在编程过程中也要特别注意。如不同多字节数据的endian结构,内置数据类型在32位和64位的架构。

Xcode提供了创建多硬件结构的应用程序的环境。要更多信息,请看 。

64位支持

Mac OS X 10.4支持编译,链接和调试64位的二进制文件。一开始仅支持由C和C++语言编写的程序,且仅支持Accelerate库和libSystem.dylib程序库。

Mac OS X 10.5的大部分系统程序库和框架支持64位。库的64位转换体现在库的实现细节上,这些细节是向应用程序透明的。基于Intel的程序可以寻址多达128TB的数据。64位的程序也可以获得更多的CPU资源,如特别为64位程序设计的寄存器。

一部分老的API不支持64位,这意味着不可以将它们用在64位的应用程序的开发上。如Carbon manager。它们不被推荐使用。详情请见, 。

?Code Fragment Manager(使用Mach-O可执行文件)

?Desktop Manager(使用Icon Services和Launch Services)

?Display Manager(使用Quartz Services)

?QuickDraw(使用Quartz或Cocoa)

?QuickTime Music Instrument(使用Core Audio)

存在着一些没有被移植到64位的可用的API,它们在32位应用程序上可用,但64位应用程序暂时不可用。包括:

?QuickTime C API(可用,但64位应用程序必须使用QuickTime Kit)

?HIToolboxunix媒体转换,WIndow Manager和其它Carbon用户界面API(可用,但推荐使用Cocoa和其它类库),请查看64Bit Guide for Carbon Developers

Mac OS X使用LP64模型,它是64位程序的移植规范,有助于让其它操作系统的应用程序向Mac OS X的移植更为规范。更多信息,请看 。有关Cocoa的64位移植信息,请看,有关Carbon的64位移植信息,请看。

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!