软件是一系列按照特定顺序组织的计算机数据和指令的集合。其中,软件被划分为系统软件、应用软件和介于这两者之间的中间件。软件并不只是包括可以在计算机上运行的电脑程序,与这些电脑程序相关的文档一般也被认为是软件的一部分。软件相较于硬件,其着重点更在于它的逻辑、虚拟的特性,是硬件物理性的抽象,正是这种抽象,将用户与物理机联系在一起,充当介质,方便用户操作。在计算机领域,软件实际是一个宽泛的概念,包括了应用软件、系统工具、os等,用户通过软件,达到对计算机硬件的操作。运行时,能够提供所要求功能和性能的指令或计算机程序集合,能够满意地处理信息的数据结构,描述程序功能需求以及程序如何操作和使用所要求的文档。最后以开发语言作为描述语言,可以认为:软件=程序+数据+文档。其中,无形的,没有物理形态,只能通过运行状况来了解功能、特性、和质量等优点,决定了软件的地位,物理空间占地需求小,能实现远距离的资源传输处理,以及人机交互。同样软件渗透了大量的脑力劳动,人的思维活动、智能活动和技术水平是软件产品的关键。人可根据自己的实际需求去设计应用高效的软件,实际上就是解放了肢体,同时又进行极为有效的社会生产。并且不会像硬件一样老化磨损,开发和运行必须依赖于特定的计算机系统环境,对于硬件有依赖性,为了减少依赖,开发中提出了软件的可移植性,具有可复用性,软件开发出来很容易被复制,从而形成多个副本。这些都决定软件在信息世界、计算机世界的重要地位。
软件的应用很多,在功能上,软件可分为系统软件与应用软件。其中,系统软件又可细分为操作系统软件与支撑其运行的支撑软件。帮助用户与诸多的软件一起,将计算机视为整体,形成一个黑箱,极大的方便了用户。操作系统是一管理计算机硬件与软件资源的程序,同时也是计算机系统的内核与基石。操作系统身负诸如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让使用者与系统交互的操作接口。支撑软件是支撑各种软件的开发与维护的软件,又称为软件开发环境(SDE)。它主要包括环境数据库、各种接口软件和工具组。著名的软件开发环境有IBM公司的Web Sphere,微软的等。应用软件则相反,不同的应用软件根据用户和所服务的领域提供不同的功能。应用软件是为了某种特定的用途而被开发的软件。它可以是一个特定的程序,比如一个图像浏览器。也可以是一组功能联系紧密,可以互相协作的程序的集合,比如微软的Office软件。也可以是一个由众多独立程序组成的庞大的软件系统,比如数据库管理系统。如今智能手机得到了极大的普及,运行在手机上的应用软件简称手机软件。所谓手机软件就是可以安装在手机上的软件,完善原始系统的不足与个性化。随着科技的发展,手机的功能也越来越多,越来越强大。不是像过去的那么简单死板,发展到了可以和掌上电脑相媲美。手机软件与电脑一样,下载手机软件时还要考虑你购买这一款手机所安装的系统来决定要下相对应的软件。同样,又其的工作方式,可分为实时处理软件、分时软件、交互式软件、批处理软件等。总而言之,软件按需进行设计,但同样也有寿命周期:
原文:https://www.cnblogs.com/ktdbk/p/12006397.html