《操作系统数据库中间件讲义》由会员分享,可在线阅读,更多相关《操作系统数据库中间件讲义(53页珍藏版)》请在金锄头文库上搜索。
1、操作系统、数据库、中间件操作系统、数据库、中间件第一章第一章 操作系统操作系统介绍介绍1.11.1 操作系统的定义操作系统的定义操作系统(Operating System缩写为 OS)是一种系统软件。它管理计算机 系统的全部软硬件资源和对程序的执行进行控制,还能使用户方便使用硬件提 供的计算机功能,也使硬件的功能发挥得更好。 操作系统的基本特征:1)并发性:多任务、多进程、多线程。2)共享性:互斥访问、同时访问。3)虚拟性:把一个物理上的对象变成多个逻辑意义的对象。银行系统、飞机订票系统等应应用用软软件件层层编译软件、编辑软件、命令解释程序 操作系统计算机硬件(裸机)逻逻辑辑软软件件层层硬硬件
2、件层层操作系统理论研究者有时把操作系统分成四大部分: 驱动程序:最底层的、直接控制和监视各类硬件的部分,它们的职责是隐藏硬 件的具体细节,并向其他部分提供一个抽象的、通用的接口。 内核:操作系统内核部分,通常运行在最高特权级,负责提供基础性、结构性 的功能。 接口库:是一系列特殊的程序库,它们职责在于把系统所提供的基本服务包装 成应用程序所能够使用的编程接口(API) ,是最靠近应用程序的部分。例如, GNU C 运行期库就属于此类,它把各种操作系统的内部编程接口包装成 ANSI C 和 POSIX 编程接口的形式。 外围:是指操作系统中除以上三类以外的所有其他部分,通常是用于提供特定 高级服
3、务的部件。例如,在微内核结构中,大部分系统服务,以及 UNIX/Linux 中各种守护进程都通常被划归此列。 总结:操作系统是靠近硬件的第一层软件,是对硬件功能的首次扩充。1.21.2 操作系统的发展历程操作系统的发展历程和分类和分类其发展历程如下:手手 工工 操操 作作 阶阶早早 期期 批批 处处 理理 阶阶执执 行行 系系 统统 阶阶多多 道道 程程 序序 系系 统统 阶阶分分 时时 系系实实 时时 系系通通 用用 操操 作作 系系操作系统分类根据不同的分类方法具有不同的操作系统分类。 1、应用领域 可分为桌面操作系统、服务器操作系统、嵌入式操作系统; 2、所支持用户数 可分为单用户操作系
4、统(如 MSDOS、OS/2、Windows)、多用户操作系统(如 UNIX、Linux、Windows Server);3、源码开放程度 可分为开源操作系统(如 Linux、FreeBSD)和闭源操作系统(如 Mac OS X、Windows);4、存储器寻址宽度、架构可以将操作系统分为 8 位、16 位、32 位、64 位、128 位的操作系统。早期 的操作系统一般只支持 8 位和 16 位存储器寻指宽度,现代的操作系统如 Linux 和 Windows 7 都支持 32 位和 64 位。从架构上分为 X86、X8664、PPC 架构。1.4 服务器操作系统服务器操作系统1.4.1 AIX
5、 操作系统操作系统尽管 UNIX 市场被 Windows 和 Linux 蚕食已成为不争的话题,AIX 仍然是 UNIX 系统中最闪亮的一个。在中国,采用 AIX 作为主要操作系统的 IBM UNIX 服务器,连续 8 年占据中国 UNIX 服务器销售额市场份额第一名。一、一、AIX 操作系统概述操作系统概述AIX(Advanced Interactive eXecutive)是 IBM 基于 AT支持多种常 用的音频、视频格式录制和回放,编码格式包括 MPEG4、MP3、H.264、AAC、ARM。 SQLite:小型的关系型数据库引擎 OpenGL|ES:根据 OpenGL ES 1.0A
6、PI 标准实现的 3D 绘图函数库 FreeType:提供点阵字与向量字的描绘与显示 WebKit:一套网页浏览器的软件引擎 SGL:底层的 2D 图形渲染引擎 SSL:在 Andorid 上通信过程中实现握手 Libc:从 BSD 继承来的标准 C 系统函数库,专门为基于 embedded linux 的设备定制b)Android 运行时Android 应用程序时采用 Java 语言编写,程序在 Android 运行时中执行, 其运行时分为核心库和 Dalvik 虚拟机两部分 核心库 核心库提供了 Java 语言 API 中的大多数功能,同时也包含了 Android 的一 些核心 API,如
7、 android.os、、android.media 等等。 Dalvik 虚拟机Android 程序不同于 J2me 程序,每个 Android 应用程序都有一个专有的 进程,并且不是多个程序运行在一个虚拟机中,而是每个 Android 程序都有一 个 Dalivik 虚拟机的实例,并在该实例中执行。Dalvik 虚拟机是一种基于寄存 器的 Java 虚拟机,而不是传统的基于栈的虚拟机,并进行了内存资源使用的优 化以及支持多个虚拟机的特点。需要注意的是,不同于 J2me,Android 程序在虚 拟机中执行的并非编译后的字节码,而是通过转换工具 dx 将 Java 字节码转成 dex 格式的
8、中间码。 4 4)LinuxLinux 内核层内核层 Android 是基于 Linux2.6 内核,其核心系统服务如安全性、内存管理、 进程管理、网路协议以及驱动模型都依赖于 Linux 内核。1.6.2 iOS 操作系统操作系统一、一、iOS 操作系统发展历程操作系统发展历程iOS 是由苹果公司开发的移动操作系统。iOS 是运行于 iPhone、iPod touch 以及 iPad 设备的操作系统,它管理设备硬件并为手机本地应用程序的实 现提供基础技术。根据设备不同,操作系统具有不同的系统应用程序,例如 Phone、Mail 以及 Safari,这些应用程序可以为用户提供标准系统服务。 i
9、OS 与苹果的 Mac OS X 操作系统一样,属于类 Unix 的商业操作系统。 发展历程 2007 年 1 月 9 日苹果公司在 Macworld 展览会上公布,随后于同年的 6 月 发布第一版 iOS 操作系统,最初的名称为“iPhone Runs OS X”。 2007 年 10 月 17 日,苹果公司发布了第一个本地化 iPhone 应用程序开发 包(SDK),并且计划在 2 月发送到每个开发者以及开发商手中。 2008 年 3 月 6 日,苹果发布了第一个测试版开发包,并且将“iPhone runs OS X”改名为“iPhone OS”。 2010 年 2 月 27 日苹果公司重
10、新设计了“iPhone OS”的系统结构和自带程 序。2010 年 6 月,苹果公司将“iPhone OS”改名为“iOS”,同时还获得了思 科 iOS 的名称授权。 2012 年 6 月,苹果公司在 WWDC 2012 上宣布了 iOS 6,提供了超过 200 项 新功能。 2013 年 6 月 10 日,苹果公司在 WWDC 2013 上发布了 iOS 7,几乎重绘了所 有的系统 APP。 2013 年 9 月 10 日,苹果公司在 2013 秋季新品发布会上正式提供 iOS 7 下 载更新。 2014 年 6 月 3 日,苹果公司在 WWDC 2014 上发布了 iOS 8,并提供了开发
11、 者预览版更新。二、二、iOS 操作系统架构操作系统架构iOS 的系统架构分为四个层次:核心操作系统层(Core OS layer)、核心 服务层(Core Services layer)、媒体层(Media layer)和可触摸层(Cocoa Touch layer)。 1.Core OS 层-包含核心部分、文件系统、网络基础、安全特性、能量 管理和一些设备驱动,还有一些系统级别的 API。 2.Core Services 层-提供核心服务,例如字符串处理函数、集合管理、 网络管理、URL 处理工具、联系人维护、偏好设置等。 3.Media 层-该层框架和服务依赖 Core Services
12、 层,向 Cocoa Touch 层提供画图和多媒体服务,如声音、图片、视频等。 4.Cocoa Touch 层-该框架基于 iPhone OS 应用层直接调用层,如触摸 事件、照相机管理等,包该层含 UIKit 框架和 Foundation 框架。iOS 架构和 Mac OS 的基础架构相似。站在高级层次来看,iOS 扮演底层 硬件和应用程序(显示在屏幕上的应用程序)的中介。如图 1-1 所示。您创建 的应用程序不能直接访问硬件,而需要和系统接口进行交互。应用程序位于应用程序位于 iOS 上层上层请注意: 虽然应用程序通常会和底层硬件隔离, 但是应用程序代码仍需 考虑设备之间的某些差异。举个
13、例子,iPad 和 iPod touch 不能打开包含电话 号码的 URL 但是 iPhone 则可以。 您创建的应用程序不能直接访问硬件,而需要和系统接口进行交互。系统 接口转而又去和适当的驱动打交道。这样的抽象可以防止您的应用程序改变底 层硬件。iOS 实现可以看作是多个层的集合(“Game Kit 框架“含有对这些层的 介绍),底层为所有应用程序提供基础服务,高层则包含一些复杂巧妙的服务 和技术。1.6.3 iOS、Android 系统对比系统对比各项比较各项比较 IOS 系统系统 Android 系统系统 发展历史 Apple 以 mac os 为核心 发展而成 Google 以 li
14、nux 为核心 发展而成 俗称系统 封闭式系统 开发式系统 系统限制 限制多 限制少 上手程度 稍有程度 简单易懂 软体副档 .ipa .apk 支援手机 iPhone 系列 SAMSUNG,HTC 等 Android 与 ios 在系统架构上的对比: Android 体系架构体系架构采用的是 Java 技术,所有应用在 Dalvik 虚拟机中运行,Dalvik 是 google 专门为移动设备优化的 Java 虚拟机。因此 Android 具有成熟,存在大 量可重用代码的优点,也有占内存大,运行速度略低的缺点。 Apple iOS 的体系架构的体系架构相对较为传统,但运行效率高,对硬件的要求
15、低,成本优 势大,在现有的硬件条件下,应用运行具有最好的顺畅感,也更加省电。系统 架构朴实无华,但干净清晰,是目前最有效率的移动设备操作系统。1.6.4 手机操作系统市场份额手机操作系统市场份额来自互联网消费调研中心 2014 年 12 月-2015 年 1 月数据显示, 2015 年 1 月搭载 Android 系统的智能机型关注度为 82.8%,与上月持平,且为用户关注 的绝对主流。苹果 iOS 系统关注度较上月小幅上涨 2.5%。Windows Phone 系统 关注度继续呈小幅下滑走势。2014 年 12 月-2015 年 1 月中国智能手机市场不同操作系统产品关注对比第二章第二章 常
16、用数据库介绍及其优化常用数据库介绍及其优化关系型数据库的使用已经有相当长的时间了。它们变得流行起来托了管理 系统的福,关系模型被实现得相当的好,并且被证明是操作数据的好方法(特 别是事务性强的应用) 。2.12.1 常用数据库介绍常用数据库介绍关系数据库,是建立在关系数据库模型基础上的数据库,借助于集合代数 等概念和方法来处理数据库中的数据。目前主流的关系数据库有 oracle、SQL、access、db2、sqlserver,sybase 等。关系数据库 (relational database)是一个被组织成一组正式描述的表格的数据项的收集,这些表格中的数据能以许多不同的方式被存取或重新召集而不需要重新组织数 据库表格。关系数据库是在 1970 年被 IBM 公司的 E. F. Codd 发明的。下面对常用的关系数据库做具体阐述:2.2.12.2.1 OracleOracle 数据库数据库一、一、ORACLE 数据库数据库介绍介绍ORACLE 数据库系统是美国