




已阅读5页,还剩62页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件是程序及其实现和维护时所必须的文档的总称 计算机软件的历史计算机软件基础系统软件和应用软件操作系统信息标准化 5 1 5 2 5 3 5 4 5 5 5 1计算机软件的历史程序设计语言发展阶段 经历了机器语言 汇编语言 高级语言 非过程语言等4个阶段 第5代自然语言的研究也已经成为学术研究的热点 5 2计算机软件基础5 2 1计算机程序5 2 2计算机软件5 2 3享有版权的软件5 2 4许可软件5 2 5共享软件5 2 6公共域软件 5 2 1计算机程序计算机程序就是指示计算机如何去解决问题或完成任务的一组详细的 逐步执行的指令 即 指令的有序集合 有些计算机程序只处理简单的任务 而那些更长 更复杂的计算机程序则用于处理复杂度较高的任务 5 2 2计算机软件软件是计算机系统的基础部分 软件 这个词通常用来描述一个商业产品 该产品可能包含不止一个程序 并且也可能还包含数据 2006年出版的 中国大百科全书 给软件下的定义是 软件是 计算机系统中的程序和有关的文件 程序是计算任务的处理对象和处理规则的描述 文件是为了便于了解程序所需的资料说明 程序必须装入机器内部才能工作 文件一般是给人看的 不一定装入机器 程序作为一种具有逻辑结构的信息 精确而完整地描述计算任务中的处理对象和处理规则 这一描述还必须通过相应的实体才能体现 也就是说 软件 不仅仅是指程序 在软件研制过程中按一定规格产生的各种文件也是软件不可缺少的组成部分 5 2 3享有版权的软件版权是授予一个程序的作者或版权的所有者某种独占权利的合法保护形式 版权的所有者惟一享有拷贝 发布 出售 更改软件等诸多权利 当购买了享有版权的软件时 你仅仅是获得了这个软件的使用权 因此 购买软件之后能在你的计算机上使用 却不能为了分发或出售该软件而另外进行拷贝 非法进行拷贝 发布或更改软件的人有时候被称为软件盗版者 他们制造的非法拷贝则称为盗版软件 盗版软件不受法律保护 甚至会触犯刑律 5 2 4许可软件除了版权保护 计算机软件通常也受到软件许可证的保护 软件许可证是一种法律合同 确定你对一个计算机程序的使用方式 对于微型机软件 用户可以在软件包装盒的外部 软件包装盒内部的一张单独卡片上或是在CD盘的封面上找到该软件的许可证 大型机的软件许可证通常是一份独立的法律文档 该文档由软件发布商与合伙的购买者协商达成 软件许可证经常扩大版权法给予用户的权利 例如 尽管版权法认为在多台机器上拷贝使用一个软件是非法的 但是软件许可证允许用户购买软件的一个拷贝而将它安装在你家中和办公室内的电脑上 只要你是这两台机器的主要使用者 许可证用户可以在特定的环境下拷贝和更改软件 软件许可一般都很冗长 并以 法律条约 的形式编写 只有当用户同意遵守软件许可的这些条款时 才能继续使用该软件 因此 用户应该知道自己所使用的任何软件的许可情况 1 小包裹许可证每次购买软件时签署和提交一个软件许可证协议很不方便 所以计算机企业使用了小包裹许可证 当购买一个软件时 软件包中的磁盘 CD ROM DVD光盘等通常封装在一个包装内 打开包裹就表明你同意了该软件许可证的各项条款 有了小包裹许可证 软件发布商就避免了协商许可条款及获得用户签字的冗长过程 这在本质上是一种 要么接受 要么放弃 的办法 1996年和1997年的法庭裁定支持小包裹许可证的有效性 它是对计算机软件提供合法保护的常用方法之一 2 多用户许可证若机构有一个网络系统 大多数软件发布商提供了多种许可选择 有些是为单用户设计的 另外的则是为多用户设计的 单用户许可证限制该软件在一段时间内只能为一个用户所用 大多数的商业软件是以单用户许可证的方式发布的 多用户许可证允许多人使用一个特定的软件包 当多个用户中每人都有他们个人的软件版本时 这种许可方式就非常有用 多用户许可证一般以用户数来计算价钱 但多用户许可中每个用户付出的价钱比单用户许可所付出的价钱要少 5 2 5共享软件共享软件是以 买前尝试 方式存在于市场上的具有版权的软件 共享软件通常包含一个允许试用一段时期的许可证 超过试用期 如果还想继续使用它 你就应该交一笔注册费 共享软件许可证一般允许你制做该软件的多个拷贝 也允许你把这些拷贝分发给别人 这是一个节约广告开支的相当有效的市场策略 但是对于共享软件 注册费的支付依靠用户的自觉 所以共享软件的作者往往只得到他们因付出编程努力而应该得到的报酬中的一小部分 5 2 6公共域软件有时候 某个作者会放弃他对软件的所有权利 而把该软件置于公共领域 让该软件没有限制地使用 这种软件称为公共域软件 与其说它属于这个作者 不如说是属于大家 公共域软件可以免费拷贝 分发 甚至是重新卖出 公共域软件的主要限制是不允许你对该软件提出版权申请 公共域软件有时被称作 免费软件 但是术语 免费软件 有时也应用于共享软件 这种术语使用的模糊性使得用户必须更加注意检查许可协议 以便于决定使用 复制和分发特定软件程序的方式 5 3系统软件和应用软件5 3 1设备驱动程序5 3 2计算机编程语言5 3 3应用软件 5 3系统软件和应用软件软件一般被分为系统软件和应用软件 对于许多计算机用户而言 这之间的区别并不明显 系统软件负责执行使计算机硬件有效工作的关键任务 协助计算机完成基本操作 像在屏幕上显示信息 在磁盘中存入数据 向打印机发送数据 解释用户命令以及和外围设备通信等 系统软件的四个子类是 操作系统 实用工具 设备驱动程序和编程语言 应用软件则协助人们完成一项任务 当你即使没有计算机也能做某件事情 但为了让这件事情计算机化而使用某个软件时 就可以认为该软件是应用软件 例如 你即使没有计算机 也能写信或写报告 那么你用来制作一个文档的软件就可以算是应用软件 5 3 1设备驱动程序当购买一个新的外围设备 比如扫描仪 时 通常需要安装相应的软件以告诉计算机如何使用这些设备 这种协助计算机控制外围设备的系统软件称为设备驱动程序 购买新的外围设备时 安装指南通常告诉用户怎么安装这个设备及其必需的驱动程序 使用 一个设备驱动程序的方法就是根据安装指南安装好设备驱动程序 一旦正确安装设备驱动程序 计算机就会在 幕后 使用它来与设备进行通信 在Windows等操作系统中 系统与硬件生产厂商合作 为设备用户提供了 即插即用 功能 以安装大多数的设备驱动程序 5 3 2计算机编程语言计算机程序是计算机用来执行以完成一项工作的指令序列 计算机编程语言使程序员能够使用类似于英语的指令来编写程序 实际上 程序员编写的指令和计算机实际执行的指令有相当大的不同 程序员的指令必须被翻译成电子信号 才能被计算机操作和处理 编程语言 相应的编译程序或解释程序 负责这个翻译过程 如今 大多数的计算机用户都不需要编写程序 因此 一般计算机 尤其是微型计算机中并没有包括计算机编程语言 如果想编写程序 必须另外购买和安装编程语言软件 现在使用较为广泛的编程语言主要有VisualBasic C C C 和Java等等 5 3 3应用软件应用软件能使计算机成为多用途的机器 以完成许多不同的工作 协助用户使用计算机完成一项特定工作的软件归类于应用软件 比如 应用软件能够帮助用户产生文档 完成计算 管理金融资源 生成图片 创作乐曲 维护文件或信息等等 5 4操作系统5 4 1操作系统的职能5 4 2桌面和服务器操作系统5 4 3操作系统的演化5 4 4操作系统的组成 5 4操作系统操作系统 OS 是控制计算机中所有活动的核心系统软件 如果没有操作系统 计算机就不能正常工作 因此 操作系统是各种计算机的关键软件部件 目前主流的操作系统包括 MicrosoftWindows MacOS UNIX和Linux等 曾经主流的操作系统还有DOS等 这些操作系统具有不同的用户界面 并且只允许计算机运行兼容的软件 比如 使用Windows操作系统的计算机只运行Windows软件 使用UNIX操作系统的计算机通常只运行UNIX软件 5 4 1操作系统的职能 计算机大管家Cpu管理存储管理设备管理文件管理 5 4 2桌面和服务器操作系统但一般分成两类 服务器操作系统和桌面操作系统 因特网Web站点的计算机通常称为 服务器 它通过分散的计算机向人们提供信息 人们在家中或办公室使用的计算机通常称为 桌面 或者 客户端 计算机 服务器操作系统 也称 网络操作系统 或 后台操作系统 是专门为那些在网络和Web站点提供集中化存储机制和通信功能的计算机而设计的 桌面操作系统 也称 客户端操作系统 个人操作系统 或 前台操作系统 是专门为单用户微型机设计的 一般用户通常与桌面操作系统进行交互 而不直接使用服务器操作系统 但是 了解主流的服务器操作系统也是很有必要的 1 Windows微软公司的Windows操作系统是大多数一般用户所直接使用的计算机操作系统 Windows操作系统的最初版本Windows1 0 2 0并没有在计算机用户中产生很大的反响 那时 微型计算机的主流操作系统是微软公司的DOS操作系统 1990年5月22日 微软发布Windows3 0 1992年发布的Windows3 1真正使Windows操作系统成为微型机操作系统的重要选择 1995年8月24日 微软发布Windows95 1998年6月25日 微软发布Windows98 这两个Windows版本逐渐巩固了Windows操作系统的 霸主 地位 2000年9月14日 微软发布了Windows98的第三版 即WindowsME 千禧版 这是最后一个16位 32位混合模式的Windows9x系列产品 上述各个版本的Windows主要用在个人计算机上 与此同时 Windows的服务器操作系统版本也在不断成长 称为WindowsNT 2000年2月17日 微软发布Windows2000 2001年10月25日 微软发布WindowsXP XP系列包含了个人计算机版本和服务器版本 各版本的技术趋于统一 2003年5月22日 微软发布Windows2003 如同任何其他事物一样 Windows操作系统也有其诞生 成长和发展的过程 从MS DOS到Windows9x 操作系统的发展宣告MS DOS命令行界面的终结 迎来了32位程序设计和图形界面的崭新时代 随着PC实现向64位的升级 2007年1月30日 微软在全球同步向消费者发售WindowsVista和2007Officesystem这两款微软最新的旗舰产品 图5 1WindowsVista和2007Officesystem 图5 2WindowsVista桌面 像其他图形化用户界面一样 Windows提供了图标 按钮和其他屏幕控制方式 用户可以使用鼠标或者类似设备来进行操作 之所以称为 windows 是因为其图形化界面最基本的容器是矩形的工作区域 每个窗口可以显示不同的文档或者程序 用户可以同时操作多个项目 这种服务被称为多任务 Windows也提供了一些基本的网络功能 2 MacOS1984年 Apple计算机公司迈出开创性一步 发布了AppleLisa计算机 该计算机提供图形化用户界面 包含可以通过鼠标进行操作的菜单 图标等 Lisa计算机在商业上并不成功 但Apple的下一个产品 即Macintosh计算机取得了很大的成绩 其图形化用户界面MacOS是其成功的决定性因素 1998年Apple公司发布的iMac计算机也包含MacOS 像Windows一样 MacOS经历了多个版本的改进 能提供多任务功能并支持小型网络 与MacOS兼容的软件被称作Macintosh软件 或简称Mac软件 尽管Macintosh和iMac用户可以选择许多Macintosh软件 但是其应用软件的数量远小于Windows操作系统下可以运行的软件数量 借助于特殊的仿真硬件和软件插件 Macintosh计算机可以运行某些Windows软件 但是运行性能不是最佳的 所以大多数MacOS用户仍然坚持只使用Macintosh软件 3 DOS在微型计算机发展的早期 我们只有通过DOS DiskOperatingSystem 磁盘操作系统 与计算机进行对话 DOS是微型机上最早使用的操作系统之一 其难以使用的命令行用户界面也给我们留下了难以磨灭的印象 DOS最初在IBMPC个人计算机上使用 命名为PC DOS 微软公司也把这个操作系统销售给其他PC兼容机制造商 命名为MS DOS 曾经辉煌的DOS如今并没有彻底消失 实际上它被集成到Windows中 通常在幕后发挥作用 所以 一般的Windows用户没有必要记住和输入这些复杂的命令 4 WindowsServer NetWare UNIX和Linux如今流行的服务器操作系统包括MicrosoftWindowsServer NovellNetWare UNIX和Linux等 这些操作系统提供管理大型网络和Web站点上数据流的特性 UNIX是一个在专业领域中较为流行的非常强大的操作系统 它有3个显著的特点 第一 UNIX是可移植的操作系统 它只需经过较小的改动就能方便地从一个平台移植到另一个平台 这主要是因为它的主要部分是由C语言编写的 而不是机器语言 第二 UINX拥有一套功能强大的工具 命令 能够组合起来 在可执行文件中被称为脚本 去解决许多问题 而这一工作在其他操作系统中则需要通过编程来完成 第三 它具有设备无关性 因为操作系统本身就包含了驱动程序 这意味着它可以方便地配置来运行任何设备 概括来说 UNIX具有一个强大的操作系统所拥有的一切特点 包括多道程序 虚拟内存和设计得非常优秀的文件和目录系统 惟一经常听到的有关UINX的批评是它的命令短而且对一般用户来说很深奥 事实上 这一点却非常适合程序设计员 因为他们需要短的命令 Linux是芬兰的LinusTorvalds最初开发的基于UNIX的操作系统 事实上 Linux和UNIX非常接近以至于被人称为UNIX的复制品 整个设计是为了让UNIX在Intel微处理器上更有效地运行 如今Linux可以运用到各种平台上 而且在程序员和商业用户中变得越来越流行 5 4 3操作系统的演化操作系统软件肯定是我们所见到的最优秀 最复杂和最庞大的软件之一 所以 真正领会操作系统课程所介绍的概念 原理 方法和技巧等 是有一定困难的 操作系统的设计和实现是所有其他程序设计和实现的基础 程序员如果能理解操作系统的工作原理 就能够编写出更好的中间件和应用程序 此外 无论是为新设备编写驱动程序 创建新的微内核服务器 还是提供能够高效处理发展需求的新系统等等 都需要理解基本的操作系统原理和技术 因此 操作系统原理 课程是计算机及其相关专业的核心课程之一 学好操作系统原理课程 对于专业学生来说 极富挑战性 操作系统的两个主要设计目标是 有效地使用硬件和容易地使用资源 它已经经历了很长的一段发展历程 1 批处理系统 设计于20世纪50年代 目的是为了控制大型计算机 当时的计算机体积都十分庞大 它们用穿孔卡片输入数据 用行式打印机输出结果 磁带设备作为辅助存储介质 每个执行的程序叫做作业 想要执行作业的用户或程序员通过穿孔卡片把程序和数据输入计算机 并向操作室发出请求 程序员对系统没有控制权 也不能交互 穿孔卡片由操作员处理 如果程序运行成功 将结果交传给程序员 如果不成功 则报错 2 分时系统 为了有效地使用计算机资源 引入了多道程序 做法是 将多个作业装入存储器 并且仅当资源可用时分配给需要它的作业 例如 当某个程序正使用输入 输出设备时 CPU处于空闲状态 可以供其他程序使用 3 个人系统 当个人计算机产生后 适合于这类计算机的单用户操作系统 比如DOS操作系统产生了 4 并行系统 对计算机更快的速度和更有效的要求导致了并行系统的设计 即在同一计算机中安装了多个CPU 每个CPU可以处理一个程序或者程序的一部分 这意味着很多任务可以并行地处理而不再是串行处理 当然 这种操作系统要比单CPU的操作系统复杂得多 5 分布式系统 网络化和交互式的发展 扩大了操作系统的内涵 以往必须在一台计算机上运行的作业现在可以由远隔千里的多台计算机共同完成 程序可以在一台计算机上运行一部分而在另一台计算机上运行另一部分 只要它们通过交互式网络例如因特网互连 此外 资源可以是分布式的 程序需要的文件可能分布在世界的不同地方 分布式系统结合了以往系统的特点 也发展了新功能 例如安全控制 5 4 4操作系统的组成操作系统原理所涉及的相关主题如图5 3所示 现代操作系统至少具有以下4种职能 存储管理 进程管理 设备管理和文件管理 操作系统还有一个部分 称为用户界面 例如GUI 或命令解释程序 shell 它负责操作系统与外界的联系 如图5 4 图5 3操作系统的相关主题组成 图5 4操作系统的基本组成 1 内存管理现代操作系统的一个重要职责是存储管理 计算机中存储容量激增 同样所处理的数据和程序也越来越大 存储分配必须进行管理以避免 内存不足 的错误 按照存储管理 操作系统可以分为两大类 单道程序和多道程序 1 单道程序 单道程序过去很流行 在单道程序里 大多数内存专用于单一的程序 仅仅一小部分用来装载操作系统 在这种配置下 程序整体装入内存运行 如果内存比程序小 程序将无法运行 运行结束后再由其他程序取代 这里的内存管理简单明了 但是 当一个程序在运行时 其他程序不能运行 程序在执行过程中经常需要从输入设备得到数据 并且需要把数据发送至输出设备 由于I O设备的速度远低于CPU 所以CPU常常处于空闲状态 CPU和内存的使用效率很低 2 多道程序 在多道程序中 同一时刻可以装入多个程序并且能够同时执行这些程序 CPU轮流为它们服务 从20世纪60年代开始 多道程序经过了一系列的改进 有分区调度 分页调度 请求分页调度 请求分段调度和请求分页和分段调度等内存调度技术 3 虚拟内存 虚拟内存意味着请求分页调度 请求分段调度 或两种都有 如今 几乎所有的操作系统都使用了这个技术 2 进程管理现代操作系统进程管理有有3个重要术语 程序 作业和进程 1 程序 是由程序员编写的一组稳定的指令 存在硬盘 或磁盘 上 它可能会也可能不会成为作业 2 作业 从程序被选中执行 到其运行结束并再次成为程序的这段过程中 程序称为作业 整个过程中 作业可能会或不会被执行 它或者驻留在硬盘上等待被装入内存 或者在内存中等待被CPU执行 或者驻留在硬盘或内存中等待I O事件 在所有这些情况下程序才称为作业 当作业执行完毕 正常或不正常 作业又变成程序并再次驻留在硬盘中 操作系统不再管理程序 每个作业都是程序 但并不是所有的程序都是作业 3 进程 进程是执行中的程序 该程序开始运行但还未结束 换句话说 进程是驻留在内存中的作业 它是从众多等待作业中选取出来并装入内存中的作业 进程可以处于运行状态或者等待CPU调用 只要作业被装入内存就成为进程 每个进程都是作业 而每个作业未必都是进程 3 设备管理设备管理器 或者称 输入 输出管理 负责访问I O设备 在计算机系统中 I O设备存在着数量和速度上的限制 由于这些设备与CPU和内存比起来速度要慢很多 所以当进程访问I O设备时 在该段时间内这个设备对其他进程而言是不可用的 设备管理器负责有效地使用I O设备 设备管理的职责是 1 不停地监视所有的I O设备 以保证它们能够正常运行 同样也需要知道什么时候设备已经完成一个进程的服务 准备为队列中的下一个进程服务 2 为每一个I O设备或是类似的I O设备维护一个队列或多个队列 例如 如果系统中有两个高速打印机 管理器能够分别用一个队列维护一个设备 或是用一个队列维护两个设备 3 使用不同的方式来访问I O设备 例如 可以用先入先出法来访问一个设备 而用最短长度优先来访问另一个设备 4 文件管理现代操作系统使用文件管理来控制对文件的访问 文件管理器的职能是 1 控制对文件的访问 只有那些获得允许的才能够访问 访问方式也可以不同 如 进程 用户也称为进程 也许可以读取文件 但却不允许写 改变 文件 另一个进程也许被允许执行文件 但却不允许查看文件的内容 2 管理文件的创建 删除和修改 3 可以给文件命名 4 管理文件的存储 怎样存储 存在哪里等等 5 负责归档和备份 5 5信息标准化5 5 1标准化的内容5 5 2信息标准化的意义5 5 3信息标准的层次 5 5信息标准化5 5 1标准化的内容以软件工程为例 标准化涉及的方面包括 1 软件设计的标准化 包括设计方法 设计表达方法 程序结构 程序设计语言 程序设计风格 用户接口设计 数据结构设计 算法设计等 2 文件编写的标准化 包括管理文件 项目实施计划 质量保证计划 开发进度月报 分析文件 可行性分析报告 软件需求说明书等 设计文件说明书 概要设计说明书 详细设计说明书等 用户文件 用户手册 维护手册 操作手册 系统实现文件 源代码 生成信息 测试信息 验收报告 开发总
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理老人考试题及答案大全
- 苏州a类安全员考试及答案
- 户外主播考试题及答案
- 红山煤矿考试题及答案大全
- 考点攻克人教版八年级物理《浮力》单元测评试卷(含答案详解版)
- 解析卷人教版八年级上册物理《声现象》章节测评试卷(含答案详解版)
- 安徽三科考试题目及答案
- 重难点解析人教版八年级上册物理物态变化《升华和凝华》单元测评试题(含答案解析)
- 辽宁省艺考考试题目及答案
- 襄阳五中高三考试试卷及答案
- 社会责任管理手册范本
- 汽车租赁项目投标书
- 农业种植项目方案
- 我的饮料我做主(课件)四年级上册综合实践活动辽师大版
- COPD综合评分表完整
- CJ∕T 537-2019 多层钢丝缠绕改性聚乙烯耐磨复合管
- GB/T 19865-2024电玩具的安全
- 兰州大学博士英文复试模板
- 服务热线外包投标方案技术标
- 浙江省建筑工程资料表格大全A表(施工单位用表)
- 生活垃圾清运服务 投标方案(技术方案)
评论
0/150
提交评论