1.mac电脑是底层什么Mac电脑是什么意思
2.视频和视频帧:Intel GPU(核显)的编解码故事
3.mac电脑系统苹果电脑是什么系统
4.编程分为哪几种
5.编译技术入门与实践之LLVM概述及环境构建
6.OpenCLï¼OpenGLåDirectXä¸è
çåºå«
mac电脑是什么Mac电脑是什么意思
‘壹’ Mac系统是什么macOS是一套由苹果开发的运行于Macintosh系列电脑上的操作系统。macOS是源码原理首个在商用领域成功的图形用户界面操作系统。
macOS是底层基于XNU混合内核的图形化操作系统,一般情况下在普通PC上无法安装的源码原理操作系统。网上也有在PC上运行的底层macOS(Hackintosh)。
Mac OS X 是源码原理国外ssc源码修复与先前的 Mac OS 彻底地分离开来的一个操作系统,它的底层底层代码与先前版本完全不同。这个新的源码原理核心名为Darwin,是底层一套开放源码、符合POSIX标准的源码原理操作系统,伴随着标准的底层Unix命令行与其强大的应用工具。
尽管最重要的源码原理架构改变是在表面之下,但是底层 AquaGUI是最突出和引人注目的特色。
柔软边缘的源码原理使用,半透明颜色和细条纹(与第一台iMac的底层硬件相似)把更多的颜色和材质带入到桌面上的视窗和控件,比 OS9 所提供的外观更多,引发了用户间大量的争论。
很多旧 Macintosh OS 用户把这个接口描述得像是像玩具一样,缺乏专业美感。而其他的人则为新系统的新 GUI 创新感到恩喜。
这种外观设计简洁,即使在第一个 macOS 版本推出之前,第三方的开发者就开始针对可以换外表的程序像是Winamp制作类似 Aqua 接口的外表。
针对一些声称是有着作权设计下制造或散布且提供这种接口软件的人,苹果采取法律行动,威胁那些声称他们。
macOS 包含了自家的软件开发程序,其重大的特色是名为Xcode的集成开发环境。Xcode 是一个能与数种编译器沟通的接口,包括 Apple 的Swift、C、C++、Objective-C、以及Java。
可以编译出目前 OS X Yosemite 所运行的两种硬件平台之可执行文件,也可以用除了 Swift 以外的几种语言编写用于旧系统的程序。还可以编译成PowerPC平台专用,x平台专用,或是跨越两种平台的通用二进制。
纯粹由系统销售的数字来看,这种 GUI 和核心的组合现在变成最畅销的 Unix 环境。
特点
1、全比特技术,可以通过第三方的ModeSelector进行比特和比特切换。
2、GrandCentralDispatch:帮助程序编译人员使用多核心编译,增强软件多核心支持。
3、OpenCL:是一种让图像处理器发挥极致来加速应用程序性能的新技术
4、辅助功能:通过万能辅助功能包含的VoiceOver2可以读出任何Mac上的文字。Multi-touch触控版支持中文手写。含有种以上盲文现实,支持蓝牙模式。
5、它的Quartz影像模式使用PDF(可携文件格式,PortableDocumentFormat)的子集合当作基础。
6、全彩,可连续缩放的小图标(最大到×(.5Leopard最大到×)像素)
7、在视窗周围的阴影和分离的文字符素来提供深度的感觉。
8、依靠NeXT-型程序服务,提供全局拼写检查及其他功能强大的工具
9、专用界面工具集、文字、图形和视窗组件的反锯齿效果
、新的界面元素,包括“纸单”sheets(文档模型对话框附带于特殊窗口)和“抽屉”drawers.
、色彩同步在核心绘图引擎中内置色彩匹配(为印刷和多媒体专业人士).
、OpenGL(在.2版中纳入)合成视窗到屏幕上,容许硬件加速绘图。这种技术称为QuartzExtreme。
、Exposé(在.3版中纳入)可以快速地排列视窗或是显现桌面。在.6中进行大量改良,直接从Dock上激活Exposé
、在整个操作系统中普遍使用Unicode。
、Spotlight搜索技术(在.4版中纳入)允许以项目的特性或内容来快速的即时搜索资料文件、邮件消息、照片、和其他信息。
、Automator(.4版中加入)是一种设计来为不同的工作任务创建一种自动化的工作流程之应用程序。
‘贰’ 苹果电脑是什么系统的 是mac系统吗
苹果电脑用的是MAC OSmac os是基于unix内核的系统,这个系统是专门为苹果电脑开发的,所以只有苹果机能使用。
mac os比windows的视觉冲击大,色彩要丰富,而且苹果有很多苹果公司自己做的一些软件 如:iwork , ilife。
‘叁’ Mac是什么意思苹果笔记本电脑的
Mac 是苹果公司推出的个人电脑系列产品,由苹果公司设计、开发和销售,sumo源码最初目标定位于家庭、教育和创意专业市场。
‘肆’ 电脑上mac是什么在哪里
Mac地址是什么?
MAC地址是固化在网卡上串行EEPROM中的物理地址,通常有位长。用来表示互联网上每一个站点的标识符,采用十六进制数表示。
任一网络设备(如网卡,路由器)一旦生产出来以后,其MAC地址永远唯一且不能由用户改变。
方式一:
1,点击开始按钮,找到“运行”,在运行中输入cmd,然后敲回车
2,在打开的命令提示符中,输入ipconfig /all 或者ipconfig -all,然后回车,找到“物理地址”
方式二:
1,点击开始按钮,选择“控制面板”
2,在打开的“控制面板”中,找到“网络和Internet”;然后继续找到“网络和共享中心”,点击打开
3,在“网络和共享中心”,打开“更改适配器设置”
4,右击“本地连接”,选择“状态”
5,在“本地连接 状态”中,点击“详细信息”,然后在“详细信息”中,找到“物理地址”,即MAC地址。
‘伍’ mac电脑是什么PC电脑又是什么
MAC是mackintosh(中文译名:麦金塔)的缩写,是苹果公司的电脑,有其独有开发的硬件及软件系统,图形处理能力尤其出色,常见于一些图形工作站。PC即Personal Computer的缩写,即常见的桌面型个人电脑。
‘陆’ Mac电脑是什么意思
MAC(Macintosh,苹果电脑)区别于装配有微软Windows系统的电脑(PC),需要说明的是这里的PC 并非是Personal Computer(个人计算机)的简称,而是来源于最初由IBM销售的PC-DOS系统(Windows的前身),后来所有装配Windows系统的电脑被称为PC,而苹果电脑因装配自家的Mac OS系统,而称为MAC。中国大陆曾使用“麦金托什”这个译名,但近期此称呼非常罕见,大陆的北京麦金塔用户会也已将电脑名改为“麦金塔”。大陆居民有时候也将麦金塔称为“苹果机”。
MAC实际上是一个物理网络地址,用于标识链路层地址。在一个网络中,IP地址会和MAC地址一一对应。说简单点,每一个网卡都有一个物理地址,也就是MAC地址,网络中访问主机时,实际上是通过ARP将IP地址转成MAC地址,才能访问。
‘柒’ 电脑MAC是什么
IP地址就如同一个职位,而MAC地址则好像是去应聘这个职位的人才,职位可以既可以让甲坐,也可以让乙坐,同样的道理一个节点的IP地址对于网卡是不做要求,基本上什么样的厂家都可以用,也就是说IP地址与MAC地址并不存在着绑定关系。本身有的计算机流动性就比较强,正如同人才可以给不同的单位干活的道理一样的,人才的流动性是比较强的。职位和人才的对应关系就有点像是IP地址与MAC地址的对应关系。比如,如果一个网卡坏了,可以被更换,而无须取得一个新的IP地址。如果一个IP主机从一个网络移到另一个网络,可以给它一个新的IP地址,而无须换一个新的网卡。当然MAC地址除了仅仅只有这个功能还是不够的,就拿人类社会与网络进行类比,通过类比,我们就可以发现其中的类似之处,更好地理解MAC地址的作用。无论是局域网,还是广域网中的计算机之间的通信,最终都表现为将数据包从某种形式的链路上的初始节点出发,从一个节点传递到另一个节点,最终传送到目的节点。数据包在这些节点之间的移动都是由ARP(Address
Resolution
Protocol:地址解析协议)负责将IP地址映射到MAC地址上来完成的。其实人类社会和网络也是类似的,试想在人际关系网络中,甲要捎个口信给丁,就会通过乙和丙中转一下,最后由丙
转告给丁。在网络中,turbodx源码这个口信就好比是一个网络中的一个数据包。数据包在传送过程中会不断询问相邻节点的MAC地址,这个过程就好比是人类社会的口信传送过程。相信通过这两个例子,我们就可以进一步理解MAC地址的作用。
‘捌’ 电脑mac是什么意思
1、Mac是苹果公司研发的一种个人消费型计算机。
2、Mac是苹果公司自年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro等计算机。使用独立的Mac OS系统,最新的macOS系列基于NeXT系统开发,是一套完备而独立的操作系统。
3、macOS系统是苹果机专用系统,正常情况下在普通PC上无法安装的操作系统。苹果公司不但生产Mac的大部分硬件,连Mac所用的操作系统都是它自行开发的。
以上是关于电脑mac是什么意思的全部内容,希望对你有用吧!
‘玖’ mac电脑是什么型号
可以使用电脑管家的硬件检测查看信息.
1、首先点击工具箱,打开硬件检测工具。
2、点击电脑概况,可以查看所有硬件信息。
‘拾’ 什么是MAC电脑
苹果电脑公司(Apple Computer)的Macintosh电脑(简称:Mac电脑) 与Windows操作系统相比,Mac电脑在执行上述核心功能上毫不逊色,许多情况下甚至表现更好。当然,如果你的Windows用得很顺手,病毒和间谍软件也没造成多少影响,你自然不必考虑转用Mac电脑。
即使你对Windows系统不满意,如果你不愿意学习新的操作方法,你也别考虑用Mac电脑。Mac和Windows系统有相近之处,但转用Mac电脑仍有一个学习过程。
例如,苹果电脑采用的是不带滚轮的单键鼠标,这需要一些时间才能适应。此外,两者的菜单和桌面窗口也有些不同。Mac电脑上的删除键类似退格键,与Windows里的删除键不一样。台式Mac电脑的键盘上有第二个与Windows类似的删除键,但笔记本M ac电脑上就没有。
另外,如果你的预算只考虑到了Mac电脑的成本,那就别换电脑了。通常还有别的支出。为了保持与Windows系统的兼容性,你也许还需要Mac版的Microsoft Office,而苹果电脑并不提供该软件。你也许还想要一个标准的双键式Windows鼠标,这种鼠标在Mac电脑上运行自如,但苹果电脑也不提供。
那些依赖专用商务软件、技术软件或是由雇主提供定制软件的Windows用户在考虑换电脑时也要谨慎,因为Mac电脑不能直接运行Windows软件,而上述专用Windows软件几乎都没有Mac版本。
视频和视频帧:Intel GPU(核显)的编解码故事
一般提及基于“显卡或多媒体处理芯片对视频进行解码”为硬解码,本文将探讨如何利用Intel的核显,即集成GPU实现硬解码。提及QSV,全称为Quick Sync Video,Intel在年发布Sandy Bridge CPU时,一同推出了这项基于核显进行多媒体处理,包括视频编解码的技术。集成核显,官方称HD Graphics,最早在Sandy Bridge前一代制程已推出,但性能提升及充分发挥在Sandy Bridge时期。Haswell及后续制程发布更高级的Iris架构。最近Intel宣布将开发独立显卡,核显发展具体走向未知。
接手QSV项目时,预期会有很多相关资料,实则相反。因此,将记录自己学习过程。
本文将介绍:
I. Intel的核显(集成GPU):
了解核显很有必要,几个月前,作者对CPU的认识还停留在“南北桥”架构。以下内容若有不准确之处,欢迎指正。
查看Gen CPU结构图,首先看CPU核心部分。uniappphp源码在整块CPU芯片中,核显占比不小,算力不容小觑。在没有独立显卡的笔记本上,可以运行大量大型游戏,虽偶有卡顿、掉帧情况,整体表现已相对不错。
接下来,看官方给出的GPU内部结构图。GPU内部远比图上所示复杂,图中介绍的仅为部分Subslice芯片结构。GPU分为Slice部分和Un-Slice部分,Slice部分已介绍,接下来介绍Un-Slice部分。
作者找到了一张图,展示了在MFF上进行视频处理的流程:1) 首先在MFX/VDBOX模块上进行编解码;2) 接着送到VQE/VEBOX上做图像增强和矫正处理;3) 然后送到SFC上做scale和transcode;4) 最后送出到显示屏上展示。是否完全正确,作者这里做个记录。
推荐知乎文章《转》Intel Gen8/Gen9核芯显卡微架构详细剖析,深入浅出,关于thread dispatch的说明即出自该文。
最后,总结Intel集成GPU/核显结构图。
注意,这是skylake架构下的GT2/GT3/GT4 GPU结构图,X数字越大,集成的Slice和Unslice芯片更多,能力越强,价格也更高。
II. Quick Sync Video(QSV)技术:
QSV是Intel推出的将视频处理任务直接送到GPU上进行专门负责视频处理的硬件模块处理的软件技术。与CPU或通用GPU上的视频编码不同,QSV是处理器芯片上的专用硬件核心,这使得视频处理更为高效。
要了解QSV如何驱动GPU的MFF,首先看官方Intel® Video and Audio for Linux上的图。在介绍QSV之前,提及Intel在FFmpeg上提供的插件,包括ffmpeg-qsv、ffmpeg-vaapi和ffmpeg-ocl。详细描述如下:
· FFmpeg-vaapi提供基于低级VAAPI接口的硬件加速,在VA API标准下在Intel GPU上执行高性能视频编解码器、视频处理和转码功能。
· FFmpeg-qsv提供基于Intel GPU的硬件加速,基于Intel Media SDK提供高性能视频编解码器、视频处理和转码功能。
· FFmpeg-ocl提供基于工业标准OpenCL在CPU/GPU上的硬件加速,主要用于加速视频处理过滤器。
接下来,介绍QSV在ffmpeg2.8及以上版本的支持,经过MSDK、LibVA、UMD和LibDRM。分层进行分析:
· MSDK:Intel的媒体开发库,支持多种图形平台,实现通用功能,可用于数字视频的预处理、编解码和不同编码格式的转换。源码地址为Intel® Media SDK,在Linux平台上编译使用。
· VA-API:Video Acceleration API,提供类unix平台的视频硬件加速开源库和标准。Intel源码地址在Intel-vaapi-driver Project,在Linux平台上使用。
· UMD:User Mode Driver的缩写,指VA-API Driver。Intel提供了两个工具:intel-vaapi-driver 和 intel-media-driver,推荐使用后者。
· LibDRM:Direct Rendering Manager,解决多个程序协同使用Video Card资源问题,提供一组API访问GPU。与VA-API,LibDRM是一套通用的Linux/Unix解决方案。
· Linux Kernel:Intel的Kernel是i driver,描述了libDRM和Kernel Driver之间的关系。
至此,整个关系图较为清晰。
III. FFMPEG+QSV解码:
QSV硬解的任务主要包括:
关于3-4步操作的详细实现,底层库会帮助完成。但作为一个优秀的工程师,研究FFMPEG源码依然十分重要。接下来,介绍如何使用FFmpeg API中的h_qsv解码器插件。
提及FFmpeg命令行使用方法,推荐阅读官方资料《QuickSync》或《Intel_FFmpeg_plugins》。
关于示例代码,作者曾遇到许多坑,总结为:多数中文博客不可靠,官方demo最可信。官方代码提供了两份可用:qsvdec.c和hw_decode.c。作者最早使用的是第一段代码,核心部分如下:
然而,这段代码存在问题。mage源码测试发现,对于赛扬系列一款CPU,在p视频上MSDK达到fps,理论上h_qsv平台上限也应为fps,但实际测试不到fps。排查后发现是av_hwframe_transfer_data()性能较弱。
最终,与Intel一起解决了性能问题。那么,性能提升方案为何是GPU-COPY技术做Memory-Mapping?
解释GPU和CPU渲染图像的过程,包括坐标系转化、纹理叠加等,仅需了解两点:
后者的数据组织方式能充分利用GPU的并行特性,加速图像处理、渲染。尽管存在一些纹理叠加的技术难题,但性能提升足以补偿。
接下来,解释Memory-Mapping:从Intel CPU架构图中可见,GPU和CPU位于同一芯片上,各自寄存器/缓存区有限,视频数据主要存储在内存上。GPU和CPU的数据组织方式不同,同一帧数据存于内存同一位置,数据格式不同,因此需要做Memory-Mapping。Memory-Mapping相较于Memory-Copy,减少了数据从内存区域A移动到区域B的操作,已经是优化。进一步优化:GPU完成Memory-Mapping以及数据从GPU到内存和CPU的操作。
在av_hwframe_transfer_data()内部,Memory-Mapping由CPU完成,性能受限于CPU,只能并行。修改后,整体性能从不到fps提升至fps,虽然与理想fps仍有差距,但满足性能需求。
据悉,Intel将在FFmpeg 4.3开源出这个解决方案。
写在后面:
了解GPU底层对应用开发人员帮助不大,毕竟了解芯片布线的重新设计、制程工艺提升、GPU-COPY技术的数据I/O提升等,也不能做什么。最终,芯片架构是芯片工程师的事,底层逻辑实现是嵌入式工程师的事。应用开发人员无法做出实质贡献,但作为知识库扩充或休闲阅读,了解也无妨。
希望有机会接触CUDA的编解码,深入学习N卡设计。
感谢因《视频和帧》系列文章结识的朋友,热心指出文章描述不准确的地方。文中如有不严谨之处,欢迎指正。
mac电脑系统苹果电脑是什么系统
‘壹’ MAC是什么操作系统MAC苹果电脑默认安装的是Mac OS操作系统。
‘贰’ macbook的操作系统是什么
你好:
macbook只是苹果的一个电脑而已,也就是一堆硬件。
操作系统苹果出厂自带MAC OS,也就是苹果操作系统,部分苹果电脑出厂也是自带windows系统的。
如果你有需要,可以自己装windows系统或者MAC OS系统。
如果你的技术够高,也可以装Linux系统。
‘叁’ 苹果电脑用的是什么系统
苹果电脑用的是MacOS系统。
macOS(年及之前称MacOSX,年至年称OSX)是苹果公司推出的基于图形用户界面操作系统,为麦金塔(Macintosh,简称Mac)系列电脑的主操作系统。
macOS包含两个主要的部分:核心名为Darwin,是以BSD源代码和Mach微核心为基础,由苹果公司和独立开发者社区合作开发;及一个由苹果公司开发,名为Aqua的专利的图形用户界面。
(3)mac电脑系统:
特点
1、全比特技术,可以通过第三方的ModeSelector进行比特和比特切换。
2、GrandCentralDispatch:帮助程序编译人员使用多核心编译,增强软件多核心支持。
3、OpenCL:是一种让图像处理器发挥极致来加速应用程序性能的新技术。
4、辅助功能:通过万能辅助功能包含的VoiceOver2可以读出任何Mac上的文字。含有种以上盲文现实,支持蓝牙模式。
5、它的Quartz影像模式使用PDF(可携文件格式,PortableDocumentFormat)的子集合当作基础。
‘肆’ 操作系统mac是什么
MAC地址
MAC地址
MAC(Media Access Control, 介质访问控制)MAC地址是烧录在Network Interface Card(网卡,NIC)里的.MAC地址,也叫硬件地址,是由比特长(6字节),进制的数字组成.0-位是由厂家自己分配.-位,叫做组织唯一标志符(organizationally unique ,是识别LAN(局域网)节点的标识。网卡的物理地址通常是由网卡生产厂家烧入网卡的EPROM(一种闪存芯片,通常可以通过程序擦写),它存储的是传输数据时真正赖以标识发出数据的电脑和接收数据的主机的地址。
是学校记录的你的网卡地址 和 你现在的网卡地址不符
‘伍’ 什么是MAC操作系统
Mac OS X 是苹果麦金塔电脑之操作系统软件的 Mac OS 最新版本。Mac OS X 于 年 首次在商场上推出。它包含两个主要的部份:Darwin,是以 BSD 原始码和 Mach 微核心 为基础,类似 Unix 的开放原始码环境,由苹果电脑采用和与独立开发者协同作进一步的开发;及一个由苹果电脑开发,命名为 Aqua 之有版权的 GUI。
Mac OS X Server 亦同时于年发售. 架构上来说与工作站(客户端)版本相同,只有在包含的工作群组管理和管理软件工具上有所差异,提供对于关键网络服务的简化存取,像是邮件传输服务器, samba 软件,LDAP 目录服务器,以及名称服务器(DNS)。同时它也有不同的授权型态。
命名
X 这个字母是一个罗马数字且正式的发音为 "十"(ten),接续了先前的麦金塔操作系统像是 Mac OS 8 和 Mac OS 9 的编号。某些人把它读作 X 字母且发音为 "ex"。对于这个直接解读的原因是对于 Unix-like 操作系统的传统命名会以字母 "x" 作为结尾 (例如 AIX, IRIX, Linux, Minix, Ultrix, Xenix)。另外一个原因是苹果电脑的倾向提及特别的版本是以(例如) "Mac OS X 版本 .4" 印刷出来。
Mac OS X 版本以大型猫科动物命名。比他的推出更重要的,在苹果电脑内部 .0 版本的代号是猎豹(Cheetah),以及 .1 版本代号为美洲狮(Puma)。在苹果的产品市场 .2 版本命名为 美洲虎(Jaguar),以及 .3 相似地命名为 黑豹(Panther)。.4 版已经被公开命名为 老虎(Tiger)。花豹(Leopard) 当作下一个推出的操作系统。苹果电脑也已经注册山猫(Lynx)和美洲狮(Puma在美洲的惯用词,Cougar)当作未来使用的商标。
由于苹果使用 "Tiger" 这个名称,面对到名称为 TigerDirect 电脑零售商的法律诉讼。然而,在 年5月日,佛罗里达州联邦法庭裁决苹果电脑使用 "Tiger" 的名称并没有侵害到 TigerDirect 的商标。
苹果电脑的网站和文章中提及特殊的 Mac OS X 版本会以四种不同的方式呈现:
* Mac OS X v.4,版本号码
* Mac OS X Tiger,版本的代号名称
* Mac OS X v.4 "Tiger",版本号码和名称,苹果有时会省略引号。
* "Tiger",简单地版本名称
历史
主要文章:Mac OS X 历史
尽管简单地说它是 Mac OS "版本" 的分支,但它与早期发行的 Mac OS 大部份是历史上大部分独立的。它以 Mach 核心为基础和 UNIX 的 BSD 实作,整合到由 Steve Jobs 于 年被迫离开离开苹果后的 NeXT 公司所发展 面向对象操作系统 之 NeXTSTEP 中。同时,苹果电脑企图创造一个自己拥有的(参考 en:Taligent 和 en:Copland) "下个世代" 操作系统,但只有小部份成功。最后 NeXT 的操作系统—在那时候称为 OPENSTEP—被选为苹果下个操作系统的基础形式,然后苹果电脑完全地买下了 NeXT。Jobs 也就重新被聘雇,后来回到公司的领导阶层,带领大家把程序设计师亲善的 OPENSTEP,转换到苹果主要家庭使用者市场和创新的专家都很欢迎的一个系统上,就是大家都知道的 Rhapsody。在某些威胁对于 Mac OS 独立开发者忠心的失策,以及对于从 Mac OS 9 到新系统减轻转变的策略改变后,Rhapsody 演化为 Mac OS X。
Mac OS X 是与先前麦金塔操作系统彻底地分离开来,它的底层程序码完全地与先前版本不同。尽管最重要的架构改变是在表面之下,但是 Aqua GUI 是最突出和引人注目的特色。柔软边缘的使用,半透明颜色和细条纹(与第一台 iMac 的硬件相似)把更多的颜色和材质带入到桌面上的视窗和控件,比 OS9 所提供的 "白金" 外观更多,引发了使用者间大量的争论。很多旧的麦金塔使用者把这个接口描述得像是玩具一般,和缺乏专业的优美,而其他的人则为苹果革命的新 GUI 状新为所欢呼。这种外观非常立即地可以辨认出来,即使在第一个 Mac OS X 版本推出之前,第三方的开发者开始针对可以换外表的程序像是 Winamp 制作类似 Aqua 接口的外表。苹果电脑以法律行动,威胁那些声称是是由他们有版权的设计下,所制造或散布且提供这种接口软件的人。
纯粹由系统销售的数字来看,这种 GUI 和核心的组合最近到现在变成最畅销的类 Unix 环境。
兼容性
尽管苹果官方声称,Mac OS X只能在使用G3或更高阶的微处理器的电脑上运行。但实际上,透过修改,Mac OS X 亦能成功安装并运行在较早期的Power PC e上;甚至有人透过PearPC模拟器Linux版,在更早期的Centris (MHz) 上安装Mac OS X .3,只是以此方式安装的Mac OS X,没有多大的实用价值可言。(仅系统自我检测便得花上数天时间)
Mac OS X 透过提供一种称为 Classic 的模拟环境,保留了与较旧的 Mac OS 应用程序的兼容像,允许使用者在 Mac OS X 中把 Mac OS 9 当作一个程序行程来执行,使大部分旧的应用程序就像在旧的操作系统下执行一样。另外,给 Mac OS 9 和 Mac OS X 的 Carbon API 可以创造出允许在两种系统执行的程序码。OpenStep 的 API 也依然可以使用,但是苹果现在把它称为 Cocoa 技术。(这个遗留下来的传统可以在 Cocoa API 中看到,大部分的类别名称都是以 NeXTSTEP 的缩写 "NS" 开头。) 给开发者的第四个选项是可以在 Mac OS X 当作 "第一等公民" 一样的 Java 平台上写应用程序 — 事实上这就是说 Java 应用程序尽可能的与操作系统合适地搭配而仍然能够"跨平台(cross-platform)",以及他的 GUI,是以 Swing 撰写的,看起来几乎完全地与天生的 Cocoa 接口类似。
只要他们能够在这个平台上被编译,Mac OS X 可以执行很多 BSD 或 Linux 软件套件。编译过的程序码通常是以 Mac OS X 封装的方式来散布,但有些可能需要命令列的组态设定或是编译。像是 Fink 和 DarwinPorts 这样的专案,提供很多标准套件之预先编译或是预先格式好的封装。在 .3 版开始,Mac OS X 已经包含 Apple X,这是给 Unix 应用程序的 X 图形接口的公司版本,当作是在安装阶段的选择性元件。苹果是以 XFree 4.3 和 XR6.6 为基础实作的,搭配一个模仿 Mac OS X 外观的视窗管理员,与 Mac OS X 有更密切的整合,延展扩充到使用天生的 Quartz 显像系统和加速 OpenGL。早期的 Mac OS X 版本可使用 XDarwin 来执行 X 应用程序。
对于早期的 Mac OS X 版本,有支援的标准硬件平台是以 PowerPC G3、G4、G5 处理器的麦金塔电脑产品线(膝上型、装上型、或是服务器)。后期的 Mac OS X 版本不再支援某些老旧的硬件、举例来说,Panther 不支援 "米**" G3,以及 Tiger 不支援苹果在推出 FireWire 之前的系统。然而,免费的工具像是 XPostFacto 可以使得苹果官方宣称不支援的某些旧系统可以安装 Mac OS X,包含某些 G3 之前的系统。操作系统针对所有支援的硬件提供相同的功能,除了基本硬件的限制之外(例如,CD-ROM 不能烧录 CD)以及在更多先进配备上尽量增快效能(例如图形加速)。
于年6月6日,Steve Jobs 在苹果每年的全球开发者大会中发表演说,表示接下来的两年间苹果将会从 PowerPC 转换到 Intel 的微处理器[1],而且在这个转变的期间,Mac OS X 都会支援两种平台。对于 PowerPC 平台的支援会一直持续到 .5 版,但是同时支援两种平台多久的时间并不清楚(Mac OS 对于 Motorola k 架构的支援一直持续到 PowerPC 系统推出后的约四年)。新版的 Xcode 支援建造 通用二元程序码(Universal Binaries),可以在两种架构执行。PowerPC 程序码在 Intel 为基础的 Mac 会使用称为 Rosetta 的模拟器来提供支援。Jobs 也证实先前的谣言,就是苹果之前每一版的 Mac OS X 开发周期都有 Intel 微处理器的版本。像是跨平台的能力已经早就存在 OS X 的血统中 - 就是 OS X 的前身,OPENSTEP,已经被移植到很多个架构下,包含 Intel 的 x,以及 OS X 的核心操作系统 Apple Darwin 也移植到 x,早在 OS X 第一次推出就可以免费下载。然而,苹果声明 x 平台的 OS X 将不会支援 Classic 环境。
显着特点
* 它的 Quartz 影像模式使用 PDF(可携文件格式,Portable Document Format)的子集合当作基础。
* 全彩,可连续缩放的小图示(最大到 × 像素)
* 在视窗周围的阴影和分离的文字符素来提供深度的感觉。
* Global spell checking and other powerful tools thanks to NeXT-style application services.
* 专用界面工具集、文字、图形和视窗元件的反锯齿效果
* New interface elements including sheets (document modal dialogs attached to specific windows) and drawers.
* Interweaving windows of different applications (not necessarily adjacent in the visible stacking order).
* ColorSync color matching built into the core drawing engine (for print and multimedia professionals).
* OpenGL(在 .2 版中纳入) 合成视窗到萤幕上,容许硬件加速绘图。这种技术称为 Quartz Extreme。
* Exposé(在 .3 版中纳入)可以快速地排列视窗或是显现桌面。
* 在整个操作系统中普遍使用 Unicode。
* Straightforward architecture for localization of applications and other code, fully separating language dependencies from the core code of a program.
* FileVault(于 .3 版中纳入)可以使用 AES(Advanced Encryption Standard) 位元金钥来加密使用者的家目录。
* Dashboard(在 .4 版中纳入)支援小的应用程序称为 Widget,可以透过一个按键就叫出来和隐藏。
* Spotlight 搜寻技术(在 .4 版中纳入)允许以项目的特性或内容来快速的即时搜寻资料档案、邮件讯息、照片、和其他资讯。
* Automator(.4版中加入)是一种设计来为不同的工作任务建立一种自动化的工作流程之应用程序。
批评
与 Microsoft Windows 相比,有某些针对 Mac OS X 缺乏 升级价格 的评论;前一版的使用者必须付全额的价格购买新版。视 Mac OS X 零售包装是否被认为 "升级" 或不是而定,而有些语意上的争议。一方面,它只能在 Mac 上使用,所有的 Mac 都会搭配某些 Mac OS 的版本一起出售,所以它是有所争议的升级版本。另一方面,在 9.0 或 .3 升级到 .4 的升级版间没有价格的差异,假设消费者买了两种版本之一的完全授权,也就是至少对于其间的升级并没有得到任何的好处。此外,消费者在新版的的 Mac OS X 公布后到它开始预先安装到新机器来出货期间,购买了麦金塔电脑,通常可以以更少的金额(.~.美金)来得到升级版。同时,Windows 的 升级价格 实质上是视购买数量协议而有所变化,如家庭版 vs. 专业版等等,导致各版本间直接的价格对照相当困难。在某些情况下,Windows 的升级价格超过 Mac OS X 的价格,因此这种评论并不切实际。
The Open Group 也批评苹果对于 "Unix" 字眼在 Mac OS X 广告宣传使用,而苹果并没有让操作系统获得正式的认证,且他使用这个字眼可能构成商标上的违法行为。苹果宣称他们使用这个字眼当作 概括性商标,且获得认证所需的费用将会使得操作系统价格上变得更贵,但是 The Open Group 声明对于一家公司的认证费用上限是 0, 美金。即使 Mac OS X 是以 Unix 为基础,且以 BSD Unix 兼容性层面为特性,但是它并不兼容于 Single Unix Specification。对于苹果不去获得 "官方" Unix 品牌的原因可能是验证并不是苹果近期或中期的目标。
苹果在内部使用 "建造编号" 来区别每一个 Mac OS X 的开发版本。每一周可能会有好几个开发版本。在苹果的指导方针下,产品的第一个开发版本是由建造1A1开始。小改版是以 1A2、1A3、1A4 等等来编号。第一个主要的开发改版变成 1B1(并且小改版会变成 1B2、1B3 等等),而下一个主要的改版会变成 1C1,以此类推。在最后一个 1_ 系列的下一个主要改版会变成 2A,接着是 2B。从一个字母到下一个的转变发生在次要的推出编号。举例来说,Panther (.3) 的第一个建造编号是 7A1。第一个公开发行的编号是 7B;而最后一个 .3.9 是 7W。但是下一个 OS X 的版本是 .4,建造编号是 8A1。当一个建造被选为当作下一个公开释出的 Mac OS X,则它会给定一个公开的版本编号。编号 4K 就是被选为 Mac OS X 版本 .0,编号 5G 变成 .1,编号 6C 变成 .2,编号 7B 变成 .3,以及编号 8A 变成 .4。
现在的 Mac OS X 版本是 .4.5,建造编号 8H (于年2月日推出)。
Mac OS X v.0 猎豹(Cheetah)
在 年3月日,苹果推出了Mac OS X .0 (内部代号为猎豹)。其早期版本相当慢,功能也不齐全,仅有少量来自独立开发商的应用软件。很多评论员认为它并不是一款成熟的大众化产品,但不失为一项有潜力的开发项目。苹果从年就开始重写Mac操作系统,对于翘首盼望多年的业界人士而言,推出Mac OS X .0本身就是一项了不起的成就。除去一些较小的补丁,Max OS X的稳定性也颇具口碑,系统内核的错误比以往大大减少了。对它的批评主要是慢,与年九月的Mac OS X公开试验版相比,猎豹并没有跑得更快些。
Mac OS X v.1 (Puma)
在该年之后的 年9月日,Mac OS X v.1(代号为 Puma)推出,增加了系统的效能和提供不存在的特色,像是 DVD 播放。由于 .0 的不好名声,苹果为 .0 的使用者推出免费的升级 CD,此为对于只有运行 Mac OS 9 的人推出 9 美元的盒装版本。有人发现升级的 CD 其实就是完整的安装光盘,只要移除一个特定的档案就能够在 Mac OS 9 系统使用;苹果随后重新推出该 CD,实际上真的是把不必要的缩减掉,使得无法在这样的系统上安装。
Mac OS X v.2 "Jaguar"
在年8月日,苹果接着推出 Mac OS X v.2 "Jaguar"(第一次公开地使用他的猫科名称推出),带来彻底的效能增强,新的且光鲜的外观,以及很多巨大的改进(根据苹果有个),在这些中有:
* 增加对于 Microsoft Windows 网络的支援
* Quartz Extreme 直接在显示卡上合成图形
* 以latent semantic indexing为基础,一个调适性的垃圾邮件过滤
* 在新的 Apple Address Book 中对于联络资料的系统贮存空间
* Rendezvous 网络(苹果的 Zeroconf 实作;于 .4 更名为 Bonjour)
* iChat:以 Apple 为商标,官方支援的 AOL 即时传讯 之客户端
* 重新翻修的 Finder,直接在每个视窗内建搜寻功能
* 很多的新 Apple Universal Access 特色
* Sherlock 3: 网页服务
* CUPS:Common Unix Printing System,允许为不支援的打印机使用 GIMP 打印驱动程序,hpijs 驱动程序等等。它也允许打印到序打印表机。
虽然包装和 CD 仍然是带有 Jaguar 外观的商标,由于与汽车制造商 Jaguar 的协议,在英国官方上不曾把 Mac OS X v.2 和 Jaguar 关联在一起。
Mac OS X v.3 "Panther"
Mac OS X v.3 "Panther" 于 年月日 推出。除了提供更多效能的改进外,它也针对使用者接口有大规模的更新。这些更新包含了跟该年之前 Jaguar 所有的多种特色。 另一方面,中断了对于某些老旧的 G3 米**世代电脑的支援。"Panther" 的新特色包含:
* Finder 更新,结合金属触感接口和快速搜寻
* Exposé:用来操作视窗接口的新系统
* 快速使用者切换:允许使用者维持登入状态而换另外一个使用者登入。
* iChat AV 增加了视讯会议功能到 iChat
* 改进 PDF 显现而使得 PDF 能够极快速地浏览
* 内建支援传真
* 更多与 Microsoft Windows 的兼容支援
* FileVault:对于使用者目录直接加密解密
* 针对PowerPC G5提供更多的支援,增加整个系统的速度
* Safari:网页浏览器
Mac OS X v.4 "Tiger"
Mac OS X v.4 "Tiger" 是在 年4月日 推出。苹果宣称 Tiger 包含 种以上新功能,但就像是 Panther 的发行推出一样,某些更老的机器已经从支援的硬件列表中去除。在 "Tiger" 中有以下这些新特色:
* Spotlight:一种快速的内容和 metadata 基础的档案搜寻工具,能够快速地找到你所搜寻的关键字项目列表。
* Dashboard:在桌面上只需要一次鼠标点击就出现且提供通用工作的 Widget
* iChat:为视讯会议支援 H. 视讯编码的新版本,且允许多方语音和影像聊天。
* QuickTime 7:包含 H. 支援的新版本,以及完全重新撰写的接口
* Safari 2:新版本的系统缺省网页浏览器,在其他新特色中,包含能够直接在浏览器检视 RSS feed 的能力。
* Automator:自动重复性的任务而不需要程序设计方式
* Core Image 和 Core Video:允许实现即时的影像或编辑时额外的效果。
* 对于 PowerPC G5 的 位元 内存支援,使用 LP 系统
* 更新 Unix 的工具,像是 cp 和 rsync,可以保存 HFS Plus metadata 和 resource forks
* 使用存取控制列表的扩充权限系统
Mac OS X v.5 "Leopard"
Mac OS X v.5 "Leopard" 是于 年 6月6日的世界开发者大会中所宣布的,将会在 年 后期或 年 早期推出。苹果电脑宣称它将会同时支援 PowerPC 和以 Intel 为基础的麦金塔电脑。
‘陆’ 苹果电脑怎么做系统
1、在桌面顶部点击前往—实用工具;
‘柒’ 苹果电脑是什么系统
苹果电脑是Mac OS系统。
Mac OS是一套运行于苹果Macintosh系列电脑上的操作系统。Mac OS是首个在商用领域成功的图形用户界面操作系统。现行的最新的系统版本是OS X . Yosemite,且网上也有在PC上运行的Mac系统,简称Mac PC。
Mac系统是基于Unix内核的图形化操作系统;一般情况下在普通PC上无法安装的操作系统。由苹果公司自行开发。苹果机的操作系统已经到了OS ,代号为MAC OS X(X为的罗马数字写法),这是MAC电脑诞生年来最大的变化。
Mac OS系统的主设计人:
Mac OS 9.0是比尔·阿特金森、杰夫·拉斯金和安迪·赫茨菲尔德,是乔布斯还在苹果的时候开发的,后来他离开苹果创立NeXT后为其开发了另一套系统。
主设计人是艾维·特万尼安(Avie Tevanian),乔布斯回归苹果后逐渐抛弃了以前的代码,在发布Mac OS X时,正式使用艾维·特万尼安当时编写的代码作为其主代码。
‘捌’ 苹果电脑是什么操作系统
MAC OS 操作系统
Mac OS是一套运行于苹果Macintosh系列电脑上的操作系统。Mac OS是首个在商用领域成功的图形用户界面操作系统。现行的最新的系统版本是OS X . Yosemite,且网上也有在PC上运行的Mac系统,简称 Mac PC。
Mac系统是基于Unix内核的图形化操作系统;一般情况下在普通PC上无法安装的操作系统。由苹果公司自行开发。苹果机的操作系统已经到了OS ,代号为MAC OS X(X为的罗马数字写法),这是MAC电脑诞生年来最大的变化。新系统非常可靠;它的许多特点和服务都体现了苹果公司的理念。
另外,疯狂肆虐的电脑病毒几乎都是针对Windows的,由于MAC的架构与Windows不同,所以很少受到病毒的袭击。MAC OSX操作系统界面非常独特,突出了形象的图标和人机对话。苹果公司不仅自己开发系统,也涉及到硬件的开发。
‘玖’ Mac操作系统是什么的
Mac OS X 是苹果麦金塔电脑之操作系统软件的 Mac OS 最新版本。Mac OS X 于 年 首次在商场上推出。它包含两个主要的部份:Darwin,是以 BSD 原始码和 Mach 微核心 为基础,类似 Unix 的开放原始码环境,由苹果电脑采用和与独立开发者协同作进一步的开发;及一个由苹果电脑开发,命名为 Aqua 之有版权的 GUI。
Mac OS X Server 亦同时于年发售. 架构上来说与工作站(客户端)版本相同,只有在包含的工作群组管理和管理软件工具上有所差异,提供对于关键网络服务的简化存取,像是邮件传输服务器, samba 软件,LDAP 目录服务器,以及名称服务器(DNS)。同时它也有不同的授权型态。
命名
X 这个字母是一个罗马数字且正式的发音为 "十"(ten),接续了先前的麦金塔操作系统像是 Mac OS 8 和 Mac OS 9 的编号。某些人把它读作 X 字母且发音为 "ex"。对于这个直接解读的原因是对于 Unix-like 操作系统的传统命名会以字母 "x" 作为结尾 (例如 AIX, IRIX, Linux, Minix, Ultrix, Xenix)。另外一个原因是苹果电脑的倾向提及特别的版本是以(例如) "Mac OS X 版本 .4" 印刷出来。
Mac OS X 版本以大型猫科动物命名。比他的推出更重要的,在苹果电脑内部 .0 版本的代号是猎豹(Cheetah),以及 .1 版本代号为美洲狮(Puma)。在苹果的产品市场 .2 版本命名为 美洲虎(Jaguar),以及 .3 相似地命名为 黑豹(Panther)。.4 版已经被公开命名为 老虎(Tiger)。花豹(Leopard) 当作下一个推出的操作系统。苹果电脑也已经注册山猫(Lynx)和美洲狮(Puma在美洲的惯用词,Cougar)当作未来使用的商标。
由于苹果使用 "Tiger" 这个名称,面对到名称为 TigerDirect 电脑零售商的法律诉讼。然而,在 年5月日,佛罗里达州联邦法庭裁决苹果电脑使用 "Tiger" 的名称并没有侵害到 TigerDirect 的商标。
苹果电脑的网站和文章中提及特殊的 Mac OS X 版本会以四种不同的方式呈现:
* Mac OS X v.4,版本号码
* Mac OS X Tiger,版本的代号名称
* Mac OS X v.4 "Tiger",版本号码和名称,苹果有时会省略引号。
* "Tiger",简单地版本名称
编程分为哪几种
编程可以分为以下几种:
1. 机器级语言:用于直接控制计算机硬件的底层语言,如汇编语言和机器码。
2. 高级语言:相对于机器级语言,更接近人类自然语言的编程语言,如C、C++、Java、Python等。
3. 脚本语言:一种不需要编译的高级语言,如Python、JavaScript、Perl等,更适合用于快速开发和小规模计算任务。
4. 面向对象编程语言:以对象为基本单位进行编程,通过封装、继承和多态等机制实现代码重用和灵活性,如Java、C++、Python等。
5. 函数式编程语言:将计算视为函数求值的过程,函数是编程的主要组件,强调无副作用和函数的纯粹性,如Haskell、Clojure、Scala等。
6. 并行编程语言:用于开发并行计算的语言,可以同时运行多个任务或处理多个数据,如CUDA、OpenCL等。
7. 领域特定语言(DSL):为特定领域而设计的编程语言,用于解决该领域特定问题,如SQL用于数据库查询、HTML和CSS用于网页设计等。
8. 虚拟机语言:在虚拟机上运行的语言,需要虚拟机将其翻译成机器码执行,如Java、C#等。
9. 编译型语言:需要将源代码编译成机器码才能执行的语言,如C、C++等。
. 解释型语言:不需要编译,通过解释器逐行执行的语言,如Python、JavaScript等。
这只是一些常见的编程分类,实际上编程的分类还有很多其他维度和特性可以进行划分。
编译技术入门与实践之LLVM概述及环境构建
本系列旨在记录学习过程和知识总结,便于后续交流。我专注于智能芯片研究,编译器设计是实践中的常见挑战,最近实验中涉及LLVM pass,处理源代码到数据流的转换。
LLVM是一个集成了模块化技术的编译器项目,非传统虚拟机概念,全称为LLVM项目。最初由伊利诺大学发起,目标是创建基于SSA策略的现代化编译策略,支持多种语言的静态和动态编译。它包含众多子项目,如LLVM core、Clang、LLDB等,广泛应用于学术和商业领域,以其通用性、灵活性和可重用性为特点。
LLVM的核心子项目包括:LLVM core提供源码和目标代码隔离的优化器,支持多种CPU;Clang是C/C++编译器,包含自动code检查工具;LLDB是高效调试器,基于LLVM核心和Clang;libc++与libc++ ABI提供C++标准库;compiler-rt提供底层代码生成优化;MLIR构建可扩展的编译器架构;OpenMP支持OpenMP在Clang中的使用;Polly进行本地化优化和并行化;libclc开发OpenCL标准库;klee则提供符号化虚拟机以检测bug。
实验准备部分,LLVM项目包含一系列工具和库,如汇编器、反汇编器等,用于处理LLVM中间表示和目标文件的转换。获取源代码时,需要明确硬件平台和软件环境。在Ubuntu系统中,可能需要升级cmake、安装openssl等。构建LLVM和Clang时,遵循官网指南,配置后执行make或ninja命令进行编译,并可能需要解决一些编译错误。
OpenCLï¼OpenGLåDirectXä¸è çåºå«
ãä»ä¹æ¯OpenCL?
ããOpenCLå ¨ç§°Open Computing Languageï¼æ¯ç¬¬ä¸ä¸ªé¢åå¼æç³»ç»éç¨ç®ç并è¡ç¼ç¨çå¼æ¾å¼ãå è´¹æ åï¼ä¹æ¯ä¸ä¸ªç»ä¸çç¼ç¨ç¯å¢ï¼ä¾¿äºè½¯ä»¶å¼å人å为é«æ§è½è®¡ç®æå¡å¨ãæ¡é¢è®¡ç®ç³»ç»ãææ设å¤ç¼åé«æ轻便ç代ç ï¼èä¸å¹¿æ³éç¨äºå¤æ ¸å¿å¤çå¨(CPU)ãå¾å½¢å¤çå¨(GPU)ãCellç±»åæ¶æ以åæ°åä¿¡å·å¤çå¨(DSP)çå ¶ä»å¹¶è¡å¤çå¨ï¼å¨æ¸¸æã娱ä¹ãç§ç ãå»ççåç§é¢åé½æ广éçåå±åæ¯ã
ãã
ããOpenCL 1.0主è¦ç±ä¸ä¸ªå¹¶è¡è®¡ç®APIåä¸ç§é对æ¤ç±»è®¡ç®çç¼ç¨è¯è¨ç»æï¼æ¤å¤è¿ç¹å«å®ä¹äºï¼
ãã1ãCç¼ç¨è¯è¨å¹¶è¡æ©å±åé;
ãã2ãéç¨äºåç§ç±»åå¼æå¤çå¨çåæ æ°æ®ååºäºä»»å¡å¹¶è¡è®¡ç®API;
ãã3ãåºäºIEEE æ åçæ°åæ¡ä»¶;
ãã4ãä¸OpenGLãOpenGL ESåå ¶ä»å¾å½¢ç±»APIé«æäºéã
ããä»ä¹æ¯OpenGL?
ããOpenGL™ æ¯è¡ä¸é¢åä¸æ为广æ³æ¥çº³ç 2D/3D å¾å½¢ API, å ¶èªè¯çè³ä»å·²å¬çäºåç§è®¡ç®æºå¹³å°å设å¤ä¸çæ°åä¼ç§åºç¨ç¨åºãOpenGL™ æ¯ç¬ç«äºè§çªæä½ç³»ç»æå ¶å®æä½ç³»ç»çï¼äº¦æ¯ç½ç»éæçãå¨å å«CADãå 容åä½ãè½æºã娱ä¹ã游æå¼åãå¶é ä¸ãå¶è¯ä¸åèæç°å®çè¡ä¸é¢åä¸ï¼OpenGL™ 帮å©ç¨åºåå®ç°å¨ PCãå·¥ä½ç«ãè¶ çº§è®¡ç®æºç硬件设å¤ä¸çé«æ§è½ãæå ·å²å»åçé«è§è§è¡¨ç°åå¾å½¢å¤ç软件çå¼åã
ããOpenGLï¼å ¨åOpen Graphics Libraryï¼æ¯ä¸ªå®ä¹äºä¸ä¸ªè·¨ç¼ç¨è¯è¨ã跨平å°çç¼ç¨æ¥å£çè§æ ¼ï¼å®ç¨äºä¸ç»´å¾è±¡ï¼äºç»´ç亦å¯ï¼ãOpenGLæ¯ä¸ªä¸ä¸çå¾å½¢ç¨åºæ¥å£ï¼æ¯ä¸ä¸ªåè½å¼ºå¤§ï¼è°ç¨æ¹ä¾¿çåºå±å¾å½¢åºãOpenGLçå身æ¯SGIå ¬å¸ä¸ºå ¶å¾å½¢å·¥ä½ç«å¼åçIRIS GLãIRIS GLæ¯ä¸ä¸ªå·¥ä¸æ åç3Då¾å½¢è½¯ä»¶æ¥å£ï¼åè½è½ç¶å¼ºå¤§ä½æ¯ç§»æ¤æ§ä¸å¥½ï¼äºæ¯SGIå ¬å¸ä¾¿å¨IRIS GLçåºç¡ä¸å¼åäºOpenGLãOpenGLçè±æå ¨ç§°æ¯âOpen Graphics Libraryâï¼é¡¾åæä¹ï¼OpenGL便æ¯âå¼æ¾çå¾å½¢ç¨åºæ¥å£âãè½ç¶DirectXå¨å®¶ç¨å¸åºå ¨é¢é¢å ï¼ä½å¨ä¸ä¸é«ç«¯ç»å¾é¢åï¼OpenGLæ¯ä¸è½è¢«å代ç主è§ã
ããOpen GLä»ç¶æ¯å¯ä¸è½å¤å代微软对3Då¾å½¢ææ¯çå®å ¨æ§å¶çAPIãå®ä»ç¶å ·æä¸å®ççå½åï¼ä½æ¯Silicon Graphicså·²ç»ä¸å以任ä½è®©å¾®è½¯ä¸æ¦çæ¹å¼æ¨å¹¿Open GLï¼å èå®åå¨è¾é«çé£é©ã游æå¼å人åæ¯ä¸ä¸ªæçç¬ç«ææ³ç群ä½ï¼å¾å¤éè¦çå¼å人åç®åä»ç¶å¨ä½¿ç¨Open GLãå æ¤ï¼ç¡¬ä»¶å¼ååæ£å¨è®¾æ³å 强对å®çæ¯æãDirect3Dç®åè¿ä¸è½æ¯æé«ç«¯çå¾å½¢è®¾å¤åä¸ä¸åºç¨ï¼ Open GLå¨è¿äºé¢åå æ®çç»æ²»å°ä½ãæåï¼å¼æ¾æºç 社åºï¼å°¤å ¶æ¯Mesa项ç®ï¼ä¸ç´è´åäºä¸ºä»»ä½ç±»åç计ç®æºï¼æ 论å®ä»¬æ¯å¦ä½¿ç¨å¾®è½¯çæä½ç³»ç»ï¼æä¾Open GLæ¯æã
ãã
ããä»å¹´å¹´æ£å¼å ¬å¸OpenGL3.0çæ¬ã并ä¸å¾å°äºï¼nvçæ¯æï¼å ¶å®æ¹ç½ç«ä¸æä¾é对Nå¡çsdkä¸è½½ã
ããä»ä¹æ¯DirectX?
ããDirectXæ¯ä¸ç§åºç¨ç¨åºæ¥å£ï¼APIï¼ï¼å®å¯è®©ä»¥windows为平å°ç游ææå¤åªä½ç¨åºè·å¾æ´é«çæ§è¡æçï¼å 强3då¾å½¢å声é³ææï¼å¹¶æä¾è®¾è®¡äººåä¸ä¸ªå ±åç硬件驱å¨æ åï¼è®©æ¸¸æå¼åè ä¸å¿ 为æ¯ä¸åçç硬件æ¥åä¸åç驱å¨ç¨åºï¼ä¹éä½ç¨æ·å®è£ å设置硬件çå¤æ度ãè¿æ ·è¯´æ¯ä¸æ¯æç¹ä¸å¤ªæç½ï¼å ¶å®ä»åé¢æä¹ä¸è¯´ï¼Directå°±æ¯ç´æ¥çææï¼èåè¾¹çXå代表äºå¾å¤çææï¼ä»è¿ä¸ç¹ä¸æ们就å¯ä»¥çåºDirectXçåºç°å°±æ¯ä¸ºäºä¸ºä¼å¤è½¯ä»¶æä¾ç´æ¥æå¡çã
ããDirectXæ¯ç±å¾å¤APIç»æçï¼æç §æ§è´¨åç±»ï¼å¯ä»¥å为å大é¨åï¼æ¾ç¤ºé¨åã声é³é¨åãè¾å ¥é¨ååç½ç»é¨åã
ããæ¾ç¤ºé¨åæ ä»»å¾å½¢å¤ççå ³é®ï¼å为DirectDrawï¼DDrawï¼å Direct3Dï¼D3Dï¼ï¼åè 主è¦è´è´£2Då¾åå éãå®å æ¬å¾å¤æ¹é¢ï¼æ们ææ¾mpgãDVDçµå½±ãçå¾ãç©å°æ¸¸æççé½æ¯ç¨çDDrawï¼ä½ å¯ä»¥æå®ç解æææå线çé¨åé½æ¯ç¨çDDrawãåè å主è¦è´è´£3Dææçæ¾ç¤ºï¼æ¯å¦CSä¸çåºæ¯å人ç©ãFIFAä¸ç人ç©ççï¼é½æ¯ä½¿ç¨äºDirectXç Direct3Dã
ããOpenCLãOpenGLåDirectXä¹é´ä¸å¾ä¸è¯´çæ äº
ããä¸ç对AppleçOpenCLçæ¯æå°æ为å®åå±çéè¦å ç´ ï¼æ©å¨å¹´ä»£ä¸æï¼å¾®è½¯å°±æ¾ç»åªåé»æ¢OpenGLæ为è¡ä¸çæ åï¼ä»¥æ¨è¡èªå·±çDirectXæ¾å¡è½¯ä»¶å游æå·¥å ·ã微软çDirect Xèµ·åçæç¥æ¯ä¸ºäºæ¨å¨DOS游æå¼åè 转åWindowsï¼ä»æ¤ä¹åå®å°±è¢«ç»å®å¨Windowsä¸ä¸ºPC游ææå¡ï¼æ以å®ä» æ¯æWindowsã
ããæåå¸æ°ççDirectXä¹æ¨å¨äºå¼åè 转åææ°ççWindowsï¼æ¯å¦ææ°ççDirectX 就带æ¥äºä¸å°Vistaä¸å±æ¸¸æï¼ä»èæ¨å¨äºVistaçééï¼ç¶èå®å¹¶æªè¾¾å°é¢æçææï¼å 为Vistaçé度é»ç¢äºDirectX游æçå¸åºï¼å¼åè åªè½å°ç®æ å次转åXPã
ããOpenGLåApple
ããOpenGLçå身æ¯é«ç«¯å¾å½¢å·¥ä½ç«ååSGIå¨å¹´ä»£æå¼åçIRIS Gï¼å®å¨å¹´ä»£åææ为äºå¼æºçæ åãå½æ¶å¾®è½¯å¨å®çWindows ä¸åå¸äºDirect3Dï¼å°å®ä½ä¸ºOpenGLçç«äºå¯¹æãèå¨å¹´ä»£æ«ï¼å¾®è½¯æ¾ç»åSGIè¿è¡äºFahrenheit项ç®çå¼åï¼è¯å¾å°ä¸¤è ç»åèµ·æ¥ï¼ä½æ¯æ²¡ææåãä¹å微软继ç»å¼åDirectX并ä¸GPUåååä½ï¼çä¸OpenGLä»»å ¶åå±ã
ããOpenGLä¹åå ä¹éæ¸æ¶å¤±ï¼ç´å°å¹´ä»£æ«Appleæ¾å¼äºèªå·±çQuickDraw 3Dï¼å°OpenGLä½ä¸ºMac OS Xçå®æ¹3DåºãAppleçç³»ç»ç»OpenGLç¨åºå¸¦æ¥äºä¸å°æ¥æ¤è ãä¹åOpenGLæ£å¼è¢«Linuxéç¨ï¼ç°å¨ä¸»æµç游æå¹³å°ï¼å æ¬PSPï¼PS3 åWiié½æ¯æ该ææ¯ã
ããä½æ¯å¾®è½¯çXboxä¾å¤ï¼å®éç¨äºèªå·±çDirectX å¾å½¢åºï¼èå°OpenGLæé¤å¨å¤ãå¦ä»OpenGL对DirectXæ¥è¯´æ¯ä»¥åæ´æç«äºåäºãè微软计åå¨Windows 7ä¸çDirectX å¢å 类似äºOpenCLçææ¯ï¼ä»¥å®ç°GPGPUè¿ç®ãä½æ¯AppleçOpenCLè½æ´ç´§å¯å°ä¸OpenGL代ç ååå·¥ä½ï¼è½å¸¦æ¥æ´å¹¿æ³çæ¯æã Appleè¿å°OpenCLä½ä¸ºä¸ä¸ªå è´¹çï¼å¼æºçæ åï¼è®©ä»»ä½äººé½è½åä¸å°è¯¥å¹³å°ä¸æ¥ã
ããOpenGLåOpenCL设计çç¸ä¼¼æ§ï¼ä½¿å¼åè æ´æäºå¼åãæ¯å¦å¨OpenCLä¸è¿è¡æ°æ®èæå计ç®ï¼å¯ä»¥æç¸åç对象å¨OpenGLä¸è¿è¡å¾å½¢æ¸²æãåæ¶OpenGLä¸çå¾å½¢æ¸²æå¯ä»¥å¨OpenCLä¸è¿è¡å¤çå转æ¢ã
ããOpenCLå¾å°äºGPUååNVIDIAåAMDçæ¯æï¼åæ¶æ¯æAppleï¼SONY,任天å çå¹³å°ï¼è¿æ¯æLinuxåWindowsï¼èä¸ä»»ä½å ¬å¸çå¼åè é½å¯ä»¥åä¸å°è¯¥ææ¯çåå±ä¸æ¥ã