Unit 2

Text Software

Software is a general term for the various kinds of programs used to operate computers and relat-ed devices.(The term hardware describes the physical aspects of computers and related devices.)

Software can be thought of as the variable part of a computer and hardware the invariable part.Software is often divided into application software(programs that do work users are directly interest-ed in)and system software(which includes operating systems and any program that supports appli-cation software).1 The term middleware is sometimes used to describe programming that mediates be-tween application and system software or between two different kinds of application software(for ex-ample,sending a remote work request from an application in a computer that has one kind of operat-ing system to an application in a computer with a different operating system).

An additional and difficult-to-classify category of software is the utility,which is a small useful program with limited capability.2Some utilities come with operating systems.Like applications,util-ities tend to be separately installable and capable of being used independently from the rest of the operating system.

Applets are small applications that sometimes come with the operating system as“accessories.”They can also be created independently using the Java or other programming languages.

Software can be purchased or acquired as shareware(usually intended for sale after a trial peri-od),liteware(shareware with some capabilities disabled),freeware(free software but with copy-right restrictions),public domain software(free with no restrictions),and open source(software where the source code is furnished and users agree not to limit the distribution of improvements).

Software is often packaged on CD-ROMs.Today,much purchased software,shareware,and freeware is downloaded over the Internet.A new trend is software that is made available for use at another site known as an application service provider.

1.Operating System

An operating system(sometimes abbreviated as“OS”)is the program that,after being initially loaded into the computer by a bootstrap program,manages all the other programs in a computer.Theother programs are called applications or application programs.The application programs make use of the operating system by making requests for services through a defined application program inter-face(API).In addition,users can interact directly with the operating system through a user inter-face such as a command language or a graphical user interface(GUI).

An operating system performs these services for applications:

● In a multitasking operating system where multiple programs can be running at the same time,the operating system determines which applications should run in what order and how much time should be allowed for each application before giving another application a turn.3

● It manages the sharing of internal memory among multiple applications.

● It handles input and output to and from attached hardware devices,such as hard disks,print-ers,and dial-up ports.

● It sends messages to each application or interactive user(or to a system operator)about the status of operation and any errors that may have occurred.

● It can offload the management of what are called batch jobs(for example,printing)so that the initiating application is freed from this work.

● On computers that can provide parallel processing,an operating system can manage how to divide the program so that it runs on more than one processor at a time.

2.Application Software

Application software is all the computer software that causes a computer to perform useful tasks beyond the running of the computer itself.A specific instance of such software is called a software application,application program,application or app.

The term is used to contrast such software with system software,which manages and integrates a computer’s capabilities but does not directly perform tasks that benefit the user.4 The system soft-ware serves the application,which in turn serves the user.

Examples include accounting software,enterprise software,graphics software,media players,and office suites.Many application programs deal principally with documents.Applications may be bundled with the computer and its system software or published separately,and can be coded as uni-versity projects.

Application software applies the power of a particular computing platform or system software to a particular purpose.

Some applications are available in versions for several different platforms;others have narrower requirements and are thus called,for example,a Geography application for Windows,an Android application for education,or Linux gaming.Sometimes a new and popular application arises which only runs on one platform,increasing the desirability of that platform.This is called a killer applica-tion.

There are many different ways to divide up different types of application software,and several are explained here.

Since the development and near-universal adoption of the Web,an important distinction thathas emerged has been between Web applications-written with HTML,JavaScript and other Web-n-ative technologies and typically requiring one to be online and running a Web browser,and the more traditional native applications written in whatever languages available for one’s particular type of computer.There has been contentious debate in the computing community regarding Web applica-tions replacing native applications for many purposes,especially on mobile devices such as smart phones and tablets.Web apps have indeed greatly increased in popularity for some uses,but the ad-vantages of native applications make them unlikely to disappear soon.Furthermore,the two can be complementary,and even integrated.

Application software can also be seen as being either horizontal or vertical.Horizontal applica-tions are more popular and widespread,for example,word processors or databases.Vertical applica-tions are niche products,designed for a particular type of industry or business,or department within an organization.Integrated suites of software will try to handle every specific aspect possible of,for example,manufacturing or banking systems,or accounting,or customer service.

There are many types of application software:

● An application suite consists of multiple applications bundled together.They usually have re-lated functions,features and user interfaces,and may be able to interact with each other,e.g.open each other’s files.Business applications often come in suites,e.g.Microsoft Of-fice,LibreOffice and iWork,which bundle together a word processor,a spreadsheet,etc.;but suites exist for other purposes,e.g.graphics or music.5

● Enterprise software addresses the needs of an entire organization’s processes and data flow,across most all departments,often in a large distributed environment.(Examples include fi-nancial systems,customer relationship management(CRM)systems and supply chain man-agement software).Departmental Software is a sub-type of enterprise software with a focus on smaller organizations and/or groups within a large organization.(Examples include travel ex-pense management and IT Helpdesk.)

● Enterprise infrastructure software provides common capabilities needed to support enterprise software systems.(Examples include databases,Email servers,and systems for managing networks and security.)

● Information worker software lets users create and manage information,often for individual projects within a department,in contrast to enterprise management.Examples include time management,resource management,documentation tools,analytical,and collaborative.Word processors,spreadsheets,Email and blog clients,personal information system,and in-dividual media editors may aid in multiple information worker tasks.

● Content access software is used primarily to access content without editing,but may include software that allows for content editing.Such software addresses the needs of individuals and groups to consume digital entertainment and published digital content.(Examples include media players,Web browsers,and help browsers.)

● Educational software is related to content access software,but has the content and/or features adapted for use by educators or students.For example,it may deliver evaluations(tests),track progress through material,or include collaborative capabilities.

● Simulation software simulates physical or abstract systems for research,training or entertain-ment purposes.

● Media development software generates print and electronic media for others to consume,most often in a commercial or educational setting.This includes graphic-art software,desktop publishing software,multimedia development software,HTML editors,digital-animation edi-tors,digital audio and video composition,and many others.

● Product engineering software is used in developing hardware and software products.This in-cludes computer aided design(CAD),computer aided engineering(CAE),computer lan-guage editing and compiling tools,integrated development environments,and application programmer interfaces.

Applications can also be classified by computing platform such as a particular operating system,delivery network such as in cloud computing and Web 2.0 applications,or delivery devices such as mobile apps for mobile devices.

The operating system itself can be considered application software when performing simple cal-culating,measuring,rendering,and word processing tasks.This does not include application soft-ware bundled within operating systems such as a software calculator or text editor.

3.Middleware

In the computer industry,middleware is a general term for any programming that serves to“glue together”or mediate between two separate and often already existing programs.A common ap-plication of middleware is to allow programs written for access to a particular database to access other databases.

Typically,middleware programs provide messaging services so that different applications can communicate.The systematic tying together of disparate applications,often through the use of mid-dleware,is known as enterprise application integration(EAI).

4.Firmware

In electronic systems and computing,firmware is the combination of persistent memory and pro-gram code and data stored in it.Typical examples of devices containing firmware are embedded sys-tems(such as traffic lights,consumer appliances,and digital watches),computers,computer pe-ripherals,mobile phones,and digital cameras.The firmware contained in these devices provides the control program for the device.Firmware is held in nonvolatile memory devices such as ROM,EPROM,or flash memory.Changing the firmware of a device may rarely or never be done during its economic lifetime;some firmware memory devices are permanently installed and cannot be changed after manufacture.Common reasons for updating firmware include fixing bugs or adding features to the device.This may require physically changing ROM integrated circuits,or reprogramming flash memory with a special procedure.Firmware such as the ROM BIOS of a personal computer may con-tain only elementary basic functions of a device and may only provide services to higher-level soft-ware.Firmware such as the program of an embedded system may be the only program that will run on the system and provide all of its functions.

New Words

Phrases

be thought of 被认为

be divided into 被分为

system software 系统软件

application software 应用软件

programming language 编程语言

trial period 试用期

open source 开放源码

application service provider 应用服务提供商

application program 应用程序

hard disk 硬盘

parallel processing 并行处理

media player 媒体播放器

computing platform 计算平台

killer application 杀手级应用

divide up 分割

smart phone 智能电话

data flow 数据流

focus on 致力于,使聚焦于

integrated development environments 集成开发环境

glue together 胶合,黏合

embedded system 嵌入系统

digital camera 数字照相机

flash memory 闪存

integrated circuit 集成电路

Abbreviations

CD-ROM(Compact Disc,Read-Only-Memory) 只读光盘

API(Application Program Interface) 应用程序接口

GUI(Graphical User Interface) 图形用户界面

HTML(Hyper Text Markup Language) 超文本标识语言

CRM(Customer Relationship Management) 客户关系管理

IT(Information Technology) 信息技术

CAD(Computer Aided Design) 计算机辅助设计

CAE(Computer Aided Engineering) 计算机辅助工程

EAI(Enterprise Application Integration) 企业应用集成

ROM(Read Only Memory) 只读存储器

EPROM(Erasable Programmable Read-Only Memory) 可擦写可编程只读存储器

BIOS(Basic Input Output System) 基本输入输出系统

Notes

[1]Software is often divided into application software(programs that do work users are directly interested in)and system software(which includes operating systems and any program that supports application software).

本句中,(programs that do work users are directly interested in)是对application software的补充说明,that do work users are directly interested in是一个定语从句,修饰和限定programs。在该定语从句中,users are directly interested in也是一个定语从句,修饰和限定work。(which includes operating systems and any program that supports application software)是一个定语从句,对system software进行解释说明。在该定语从句中that supports application software也是一个定语从句,修饰和限定any program。

[2]An additional and difficult-to-classify category of software is the utility,which is a small useful program with limited capability.

本句中,which is a small useful program with limited capability是一个非限定性定语从句,对the utility进行解释说明。

[3]In a multitasking operating system where multiple programs can be running at the same time,the operating system determines which applications should run in what order and how much time should be allowed for each application before giving another application a turn.

本句中,where multiple programs can be running at the same time是一个定语从句,修饰和限定a multitasking operating system。which applications should run in what order and how much time should be allowed for each application before giving another application a turn是宾语从句,做de-termines的宾语。

[4]The term is used to contrast such software with system software,which manages and in-tegrates a computer’s capabilities but does not directly perform tasks that benefit the user.

本句中,The term指上一段提到的Application software。which manages and integrates a computer’s capabilities but does not directly perform tasks that benefit the user是一个非限定性定语从句,对system software进行解释说明。which指system software。that benefit the user是一个定语从句,修饰和限定tasks。

[5]Business applications often come in suites,e.g.Microsoft Office,LibreOffice and iWork,which bundle together a word processor,a spreadsheet,etc.;but suites exist for other purposes,e.g.graphics or music.

本句中,come in suites的意思是“做成套件,以套件形式出现”。which bundle together a word processor,a spreadsheet,etc是一个非限定性定语从句,对Microsoft Office,LibreOffice and iWork进行补充说明。