详解计算机软件基本概念

news2024/11/19 16:30:30

软件基本概念

软件的定义

一个完整的计算机系统是由硬件系统和软件系统协同工作来完成某一给定的任务的。

只有硬件的计算机称为裸机,裸机必须安装了计算机软件后才可以完成各项任务。

从广义地讲,软件是指计算机程序、数据以及开发、使用和维护程序所需要的所有文档的集合

通常将软件分为系统软件应用软件两大类

软件=程序+数据+文档

  • 程序是按照事先设计的功能和性能要求执行的指令序列
  • 数据是程序运行的基础和操作的对象
  • 文档是有关程序开发、维护和使用的各种图文材料

计算机软件具有以下特点:

  • 不可见性:软件是二进制编码,仅能看到物理载体,看不见软件本身
  • 适用性:不是只满足一种特定应用的需要,而是适应一类应用问题的需要
  • 依附性:软件依附于特定的计算机硬件、网络或其他软件环境
  • 复杂性:软件规模越来越大,结构越来越复杂,成本越来越高
  • 无磨损性:软件不像其他物理产品会有损耗或产生物理老化现象
  • 易复制性:软件以电、磁、光等形式存储和传输,非常容易且毫无失真的进行复制
  • 不断演化性:软件存在生命周期,需要进行软件版本的升级,适应不断变化的环境
  • 有限责任:软件厂商不对软件的正确性、精确性、可靠性和通用性做任何承诺
  • 脆弱性:操作系统和通信协议存在漏洞,软件容易被篡改和破坏

软件的分类

系统软件和应用软件

从功能角度区分,可以将计算机软件分为系统软件应用软件两大部分,

在这里插入图片描述

系统软件是建造在裸机(计算机硬件系统)之上,应用软件是以系统软件为工作平台

系统软件

系统软件用于发挥和扩大计算机的功能及用途,提高计算机的工作效率,为用户开发应用系统提供一个平台,用户可以使用它,一般不随意修改它。

系统软件主要包括操作系统、程序设计语言及其处理程序(如汇编程序、编译程序、解释程序等)、数据库管理系统、系统服务程序以及故障诊断程序、调试程序、编辑程序等工具软件。

操作系统

操作系统是配置在计算机硬件上的最底层软件,是对硬件系统功能的第一次扩充,它直接控制,管理各种硬件资源。

当计算机安装了操作系统以后,就为其他软件和用户提供了良好的工作环境,用户就不再直接操作计算机硬件,而是利用操作系统所提供的命令来操作和使用计算机。目前典型的操作系统有Windows、UNIX、Linux、Mac OS 等。

语言处理程序

用各种程序设计语言编写的源程序,计算机是不能直接执行的,必须经过翻译(对汇编语言源程序是汇编,对高级语言源程序则是编译或解释)才能执行,这些翻译程序就是语言处理程序,包括汇编程序、编译程序和解释程序等,它们的基本功能是把用高级语言或汇编语言编写的源程序翻译成机器可执行的二进制语言程序。语言处理程序也称为翻译程序翻译器

应用软件

应用软件是软件开发人员为解决各种实际问题而编制的计算机程序和相关资料

目前,应用软件为专用软件和通用软件两种。随着计算机应用领域的扩大,应用程序越来越多。使用部门已研制出许多通用性好的应用软件,逐渐商品化,并形成系统化软件,提供用户使用。因此,通用软件和专用软件之间没有严格的界限。

按照开发方式和使用范围的不同,可将应用软件分成两类,即通用应用软件和定制应用软件

通用应用软件

  • 办公自动化:如Microsoft Office、金山WPS等。
  • 动画制作:如3D Max、Flash、Adobe After Effects等
  • 图形图像处理:如 AutoCAD、Adobe Photoshop、CorelDRAW、Corel PHOTO-PAINT 等。
  • 网络通信软件:如IE、mail等
  • 网页制作:如 FrontPage、Dreamweaver 等。
  • 多媒体制作:如Authorware、Director等
  • Internet服务:WWW浏览器、电子邮件软件、文件传输软件等。

定制应用软件

定制应用软件是针对具体实际问题而开发的软件,它们完全是按照用户的特定需求而专门开发的。如某商场的销售管理和市场预测系统、某制造企业的集成制造系统、某机场的飞机订票系统、某大学的教务管理系统等。这类软件专用性强,运行效率高,成本较高。

开源软件和非开源软件

是否开放软件的源代码的角度分类,软件可以分为开源软件非开源软件

  • 开放源码软件是指其源码可以被公众使用的软件,用户可以自由地使用、复制、散发以及修改源码。
  • 相对的是非开源软件,如来自微软的软件,这类软件的源代码是保密的,只有公司的开发人员才代码。

传统客户端软件和在线软件

是否需要在客户端计算机安装软件的角度分类,软件可以分为客户端软件在线软件

客户端软件

传统的软件需要用户在购买软件使用许可后,将软件在客户端计算机上安装并输人软件序列号才能使用,这种模式成就了以微软为代表的一大批软件公司。

在线软件

在线软件指软件供应商提供软件在线服务,是随着互联网技术的发展和应用软件的成熟,在21世纪开始兴起的一种完全创新的软件应用模式。

在这种模式下,厂商将应用软件统一部署在自己的服务器上,客户可以根据自己的实际需求,通过互联网向厂商订购所需的应用软件服务,按订购的服务多少和时间长短向厂商支付费用,并通过互联网获得厂商提供的服务。

用户不用再购买软件,而改用向提供商租用基于Web的软件,来管理企业经营活动,且无须对软件进行维护,服务提供商会全权管理和维护软件,软件厂商在向客户提供互联网应用的同时,也提供软件的离线操作和本地数据存储,让用户随时随地都可以使用其订购的软件和服务。

专属软件、自由软件、共享软件、免费软件和公共软件

不同的软件一般都有对应的软件授权,软件的用户必须在同意所使用软件的许可证的情况下才能够合法的使用软件。

依据许可方式的不同,大致可将软件区分为以下几类:
专属软件

此类软件通常不允许用户随意地复制、研究、修改或散布。传统的商业软件公司通常采用此类授权,例如微软的Windows和办公软件。专属软件的源码通常被公司视为私有财产而予以严密的保护
自由软件

此类软件与专属软件相反,赋予用户复制、研究、修改和散布该软件的权利,并提供源码供用户自由使用,仅给予些许的其他限制。如Linux、Firefox和OpenOffice等。
免费软件

可免费取得和转载该类软件,但并不提供源码,也无法修改
公共软件

原作者已放弃权利,著作权过期,或作者已经不可考究的软件。在使用上无任何限制。
共享软件

共享软件是以先使用后付费的方式销售的享有版权的软件。根据共享软件作者的授权,用户可以从各种渠道免费得到它的备份,也可以自由传播它,但在功能或使用日期上受到限制。用户总是可以先使用或试用共享软件,认为满意后再向作者付费

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1442800.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Go语言安全编码:crypto/sha1库全面解析

Go语言安全编码:crypto/sha1库全面解析 简介SHA-1基础原理和特点SHA-1与其他哈希算法的比较代码示例:基本的SHA-1哈希生成 使用crypto/sha1处理数据处理字符串和文件的SHA-1哈希代码示例:为文件生成SHA-1哈希 常见错误和最佳实践 在实际项目中…

烟雨要饭网带后台,附带搭建教程

直接上传访问即可,有安装向导,php环境不得低于7.0 后台地址/Admin,默认账号admin 默认密码123456 自带乞讨音乐,增加樱花特效

《乱弹篇(十二)聊春晚》

龙年大初一,老龄笔者发表《乱弹篇(十二)》。“十二”的标志,乃好事成双“二”。喜庆有余,自不待言! 除夕夜我没有看春晚,是在继续追剧,即以明朝宫廷内斗为背景的电视连续剧《后宫》…

【原理图PCB专题】Cadence17.4版本新增加的Cutout和Design_Outline层有什么用?

在Cadence 17.4版本中我们发现在Board Geometry下面多出了Cutout和Design_Outline两层,其实这两层在高版本的软件中都做为板框使用。 如下所示在输出光绘时,如果没有将Cutout和Desing_Outline两层加入,还是使用16版本的Outline来定义板框的话,在出光绘时会提示:WA…

备战蓝桥杯---搜索(进阶1)

话不多说,直接看题: 没有传送带时,我们可以直接BFS,但因为传送带的出现,可能在队列里的元素到起点时间不单调的问题,而BFS本来就是可以看成随着时间推移而产生的情况,于是我们把队列看成优先队列…

Matlab使用点云工具箱进行点云配准ICP\NDT\CPD

一、代码 主代码main.m,三种配准方法任选其一 % 读取点云文件 source_pc pcread(bun_zipper.ply); target_pc pcread(bun_zipper2.ply);% 下采样 ptCloudA point_downsample(source_pc); ptCloudB point_downsample(target_pc);% 配准参数设置 opt param_set…

有关网络安全的课程学习网页

1.思科网络学院 免费学习skillsforall的课程 课程链接:Introduction to Cybersecurity by Cisco: Free Online Course (skillsforall.com) 2.斯坦福大学计算机和网络安全基础 该证书对于初学者来说最有价值,它由最著名的大学之一斯坦福大学提供。您可…

卫星通讯领域FPGA关注技术:算法和图像方面(1)

最近关注的公众号提到了从事移动通信、卫星通讯等领域的FPGA、ASIC、信号处理算法等工程师可能需要关注的技术,有LMS算法、RLS算法、LCMV算法、SAR图像处理,以下做了一些基础的调研: 1 LMS算法: LMS(Least Mean Squa…

springboot170图书电子商务网站的设计与实现

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…

elasticsearch下载及可视化工具下载使用

elasticsearch下载及配置、启动 一、下载 Download Elasticsearch | Elastic 二、启动 双击bat即可。 出现如下说明启动成功: 访问测试: 三、注意 (1)因为es启动默认端口是:9200,所以需要检查此端口是否被占用。…

unity-ios-解决内购商品在Appstore上面已配置,但在手机测试时却无法显示的问题

自己这几天用 unity 2021 xcode 14.2 开发ios内购,appstore上面内购商品都已经配置好了,但是在手机里就是不显示,最后才发现必需得满足以下条件才行: 1. Appstore后台 -> 内购商品 -> 商品状态必需为『准备提交』以上状态…

【万题详解】洛谷P1282 多米诺骨牌

题目 链接——题目在这里!!! 多米诺骨牌由上下 22 个方块组成,每个方块中有 1∼6 个点。现有排成行的上方块中点数之和记为 S1​,下方块中点数之和记为 S2​,它们的差为 ∣∣S1​−S2​。如图S161119&…

最佳视频转换器软件:2024年视频格式转换的选择

我们生活在一个充满数字视频的世界,但提供的内容远不止您最喜欢的流媒体服务目录。虽然我们深受喜爱的设备在播放各种自制和下载的视频文件方面变得越来越好,但在很多情况下您都需要从一种格式转换为另一种格式。 经过大量测试, 我们尝试过…

谷歌发布AI新品Gemini及收费模式;宜家推出基于GPT的AI家装助手

🦉 AI新闻 🚀 谷歌发布AI新品Gemini及收费模式 摘要:谷歌宣布将原有的AI产品Bard更名为Gemini,开启了谷歌的AI新篇章。同时推出了强化版的聊天机器人Gemini Advanced,支持更复杂的任务处理,提供了两个月的…

【MySQL】数据库基础 -- 详解

一、什么是数据库 存储数据用文件就可以了,为什么还要弄个数据库? 一般的文件确实提供了数据的存储功能,但是文件并没有提供非常好的数据(内容)的管理能力(用户角度)。 文件保存数据有以下几个缺点&…

《MySQL 简易速速上手小册》第8章:事务管理和锁定策略(2024 最新版)

文章目录 8.1 理解 MySQL 中的事务8.1.1 基础知识8.1.2 重点案例:使用 Python 实现银行转账事务8.1.3 拓展案例 1:处理并发事务8.1.4 拓展案例 2:使用 Python 监控事务状态 8.2 锁定机制和事务隔离级别8.2.1 基础知识讲解8.2.2 重点案例&…

《PCI Express体系结构导读》随记 —— 第II篇 第4章 PCIe总线概述(12)

接前一篇文章:《PCI Express体系结构导读》随记 —— 第II篇 第4章 PCIe总线概述(11) 4.2 PCIe体系结构的组成部件 PCIe总线作为处理器系统的局部总线,其作用与PCI总线类似,主要目的是为了连接处理器系统中的外部设备…

Java强训day14(选择题编程题)

选择题 编程题 题目1 import java.util.Scanner;public class Main {public static void main(String[] args) {//读入年月日(字符串形式读入)Scanner sc new Scanner(System.in);String s sc.nextLine();String[] ss s.split(" ");i…

C语言学习day12:水仙花(do while)

前面我们学习了do while循环,今天做一个练习:水仙花 题目:一个三位数(100-999),获取其中所有各个位数的相加等于这个数本身 的数 尽量自己先写一写,差不多了再看答案 思路: 先获…

【医学大模型 尘肺病】PneumoLLM:少样本大模型诊断尘肺病新方法

PneumoLLM:少样本大模型诊断尘肺病新方法 提出背景PneumoLLM 框架效果 提出背景 论文:https://arxiv.org/pdf/2312.03490.pdf 代码:https://github.com/CodeMonsterPHD/PneumoLLM/tree/main 历史问题及其背景: 数据稀缺性问题&a…