我们毫不怀疑世界正变得越来越依靠软件。软件是诸如无处不在的手机,和复杂的空中控制系统的核心元素。事实上,如果没有软件,例如eBay 和Amazon等我们理所当然认为是创新的企业将不可能存在。甚至那些金融业,零售业和公共部门等传统行业也相当的依赖于软件。在当今的时代,某种程度上,我们很难发现一个企业完全与软件不相关。高新企业为了生存,因此他们所依靠的软件必须能提供其所需的功能;所需的高质量;所承诺的可用性,和可接受的价格。
电脑软件,是人们为了告诉电脑要做什么事而编写的,电脑能够理解的一串指令,有时也叫代码、程序。根据功能的不同,电脑软件可以粗略地分成四个层次。最贴近电脑硬件的是一些小巧的软件。它们实现一些最基本的功能,通常“固化”在只读存储器芯片中,因此称为固件。系统软件包括操作系统和编译器软件等。系统软件和硬件一起提供一个“平台”。它们管理和优化电脑硬件资源的使用。常见的中间件包括数据库和万维网服务器等,它们在应用软件和平台之间建立一种桥梁。应用软件种类最多,包括办公软件、电子商务软件、通信软件、行业软件,游戏软件等等。
电脑软件都是用各种电脑语言(也叫程序设计语言)编写的。最底层的叫机器语言,它由一些0和1组成,可以被某种电脑直接理解,但人就很难理解。上面一层叫汇编语言,它只能由某种电脑的汇编器软件翻译成机器语言程序,才能执行。人能够勉强理解汇编语言。人常用的语言是更上一层的高级语言,比如C, Java, Fortran, BASIC。这些语言编写的程序一般都能在多种电脑上运行,但必须先由一个叫作编译器或者是解释器的软件将高级语言程序翻译成特定的机器语言程序。编写电脑软件的人员叫程序设计员、程序员、编程人员。他们当中的高手有时也自称为黑客。
由于机器语言程序是由一些0和1组成的,它又被称为二进制代码。汇编语言和高级语言程序也被称为源码。在实际工作中,一般来讲,编程人员必须要有源码才能理解和修改一个程序。很多软件厂家只出售二进制代码。近年来,国际上开始流行一种趋势,即将软件的源码公开,供全世界的编程人员共享。这叫“开放源码运动”。
软件就是我们平常用的如瑞星、OFFICE、等等。没有软件的计算机,也叫“裸机”,可以说是废铁一堆。软件可分为专用软件和通用软件。通用软件和操作系统,专用的软件如PS,DW。
软件系统(Software Systems)是指由系统软件、支撑软件和应用软件组成的计算机软件系统,它是计算机系统中由软件组成的部分。它包括操作系统、语言处理系统、数据库系统、分布式软件系统和人机交互系统等。操作系统用于管理计算机的资源和控制程序的运行。语言处理系统是用于处理软件语言等的软件,如编译程序等。数据库系统是用于支持数据管理和存取的软件,它包括数据库、数据库管理系统等。数据库是常驻在计算机系统内的一组数据,它们之间的关系用数据模式来定义,并用数据定义语言来描述;数据库管理系统是使用户可以把数据作为轴象项进行存取、使用和修改的软件。分布式软件系统包括分布式操作系统、分布式程序设计系统、分布式文件系统、分布式数据库系统等。人机交互系统是提供用户与计算机系统之间按照一定的约定进行信息交互的软件系统,可为用户提供一个友善的人机界面。操作系统的功能包括处理器管理、存储管理、文件管理、设备管理和作业管理。其主要研究内容包括:操作系统的结构、进程(任务)调度、同步机制、死锁防止、内存分配、设备分配、并行机制、容错和恢复机制等。
语言处理系统的功能是各种软件语言的处理程序,它把用户用软件语言书写的各种源程序转换成为可为计算机识别和运行的目标程序,从而获得预期结果。其主要研究内容包括:语言的翻译技术和翻译程序的构造方法与工具,此外,它还涉及正文编辑技术、连接编辑技术和装入技术等。
数据库系统的主要功能包括数据库的定义和操纵、共享数据的并发控制、数据的安全和保密等。按数据定义模块划分,数据库系统可分为关系数据库、层次数据库和网状数据库。按控制方式划分,可分为集中式数据库系统、分布式数据库系统和并行数据库系统。数据库系统研究的主要内容包括:数据库设计、数据模式、数据定义和操作语言、关系数据库理论、数据完整性和相容性、数据库恢复与容错、死锁控制和防止、数据安全性等。
分布式软件系统的功能是管理分布式计算机系统资源和控制分布式程序的运行,提供分布式程序设计语言和工具,提供分布式文件系统管理和分布式数据库管理关系等。分布式软件系统的主要研究内容包括分布式操作系统和网络操作系统、分布式程序设计、分布式文件系统和分布式数据库系统。
人机交互系统的主要功能是在人和计算机之间提供一个友善的人机接口。其主要研究内容包括人机交互原理、人机接口分析及规约、认知复杂性理论、数据输入、显示和检索接口、计算机控制接口等。
这个栏目的主题就是关于软件的一些知识,如果你还不了解软件,或者对某些软件技术概念还不是很清楚,可以看看,希望对您有所启示和帮助。
|