软考中级之软件设计师---知识点汇总总结

news2024/12/25 14:04:16

软考中级之软件设计师---知识点汇总总结

  • 软考介绍
    • 资格设置
    • 证书样本
  • 计算机组成原理
  • 操作系统
    • 1. 进程的三态模型
    • 2. 磁盘调度算法
  • 计算机网络
    • 1. 网络的分类
    • 2. 各层的互连设备
    • 3. 网络模型,协议簇
    • 4. 传输层协议TCP、UDP
      • 4.1 TCP (Transmission Control Protocol,传输控制协议)
      • 4.2 UDP(User Datagram Protocol, 用户数据报协议)
      • 4.3 小结
    • 5. HTTPS和HTTP的区别
    • 6. IP地址与MAC地址的区别
    • 7. 计算机网络中A,B,C类子网的划分
    • 8. Windows命令
    • 9. 其他
  • 数据结构
    • 1. 查找算法
    • 2. 排序算法选择
    • 3. 关键路径问题
  • 数据库
    • 1. 关系模式的范式
      • 1.1 第一范式(1NF)
      • 1.2 第二范式(2NF)
      • 1.3 第三范式(3NF)
  • 软件工程
    • 1. 开发方法/开发模型的选择
    • 2. 软件测试
      • 2.1 白盒测试

软考介绍

计算机技术与软件专业技术资格(水平)考试(简称计算机软件资格考试,又可简称为软考),软考证书在中国计算机和软件专业领域具有较高的含金量。

  1. 职业认可:软考证书是对个人软件技术能力和专业知识的认可,表明持证人在相关领域具备一定的专业水平和能力。

  2. 提升竞争力:拥有软考证书可以增强个人在求职市场上的竞争力。对于同等学历和工作经验的候选人而言,持有相关软考证书的人更有可能获得面试和职位机会。

  3. 加分优势:在一些招聘或评职称的过程中,软考证书可能被视为加分项。一些公司、机构或政府部门可能会将软考证书作为评定候选人能力的重要参考因素之一。

  4. 专业发展:软考证书的获得可以作为个人专业发展的里程碑,有助于提升个人在当前岗位上的技术水平和职业发展机会。

软件设计师就是软考中较为常见且被认为有用的软考证书,它涵盖了软件需求分析、软件架构设计、软件详细设计等方面的知识和技能,适用于软件开发和设计相关的职位

资格设置

在这里插入图片描述

证书样本

在这里插入图片描述
在这里插入图片描述

想要了解更多有关软考内容请访问软考官方网站:https://www.ruankao.org.cn/

计算机组成原理

  1. 实现海明码纠错应满足: 2^k >= k + n + 1 ,其中k是检验位数,n为数据位数
  2. 词法分析:单词是否正确 语法分析: 语法是否出错 语义分析:分析语法含义的结构
  3. 虚拟存储体系由主存-辅存两级存储器构成
  4. 浮点数能表示的数的范围由阶码的位数决定,精度由尾数的位数决定.
  5. 人耳能听到的声音视率范围是: 20Hz-20KHZ。低于这个区间的,叫次声波,高于这个区间的叫超声波

操作系统

  1. CPU根据 指令周期的不同阶段 来区分在内存中以二进制编码存放的指令和数据
  2. CPU访问速度:通用寄存器>Cache>内存>硬盘
  3. 线程可与同属于一个进程的其他线程共享进程所拥有的全部资源

1. 进程的三态模型

在这里插入图片描述

2. 磁盘调度算法

  1. 先来先服务(FCFS):按请求访问者的先后次序启动磁盘驱动器,而不考虑它们要访问的物理位置。
  2. 最短寻道时间优先(SSTF):让离当前磁道最近的请求访问者启动磁盘驱动器,即让查找时间最短的那个作业先执行,而不考虑请求访问者到来的先后次序,这样就克服了先来先服务调度算法中磁头移动过大的问题。
  3. 扫描算法(SCAN)或电梯调度算法:
    在这里插入图片描述
  4. 循环扫描算法(CSCAN)单向扫描算法:
    在这里插入图片描述

计算机网络

1. 网络的分类

计算机网络有以下两种常用的分类方法。

  1. 按传输技术进行分类可分为广播式网络和点到点式网络;
  2. 按地理范围进行分类可分为局域网(LAN)、城域网(MAN)和广域网(WAN)。
    a. 局域网(LAN)。局域网是一种在小区域内使用的,由多台计算机组成的网络,覆盖范围通常局限在10 千米范围之内,属于一个单位或部门组建的小范围网。
    b. 城域网(MAN)。城域网是作用范围在广域网与局域网之间的网络,其网络覆盖范围通常可以延伸到整个城市,借助通信光纤将多个局域网联通公用城市网络形成大型网络,使得不仅局域网内的资源可以共享,局域网之间的资源也可以共享。
    c. 广域网(WAN)。 广城网是一种远程网,涉及长距离的通信,覆盖范围可以是个国家或多个国家,甚至整个世界。由于广域网地理上的距离可以超过几千千米,所以信息衰减非常严重,这种网络一般要租用专线,通过接口信息处理协议和线路连接起来,构成网状结构,解决寻径问题。

覆盖范围:局域网<城域网<广域网

2. 各层的互连设备

  1. 物理层:中继器、集线器(多路中继器、多端口中继器)
  2. 数据链路层:网桥、交换机(多端口的网桥)、网卡
  3. 网络层:路由器
  4. 应用层:网关

3. 网络模型,协议簇

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  1. TCP和UDP是基于IP协议的;
  2. FTP协议占用两个标准的端口号:20和21,其中20为数据端口,21为控制端口
  3. POP3协议采用Client/Server模式
  4. ARP协议的作用是实现IP地址到MAC地址的转换
  5. ARP报文分为ARP Request和ARP Response,其中ARP Request采用广播进行传送,ARP Response采用单播进行传送
  6. RARP协议的作用是实现MAC地址到IP地址的转换
  7. DHCP(动态主机配置协议)的功能是:集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway 地址、DNS服务器地址等信息,并能够提升地址的使用率。
  8. DHCP客户端可以从DHCP服务器获得本机IP地址、DNS服务器地址、DHCP服务器地址和默认网关的地址等
  9. Windows无效地址:169.254.X.X Linux无效地址:0.0.0.0
    1. 254.X.X是Windows系统在DHCP信息租用失败时自动给客户机分配的IP地址
  10. ICMP协议数据单元封装在 IP数据 报中传送
  11. DNS域名查询的次序是:本地的hosts文件–>本地DNS缓存–>本地DNS服务器–>根域名服务器
  12. 协议是控制对等实体之间通信的规则,是水平的;服务是下层通过层间接口向上层提供的功能,是垂直的;
  13. 协议的实现保证了能够向上一层提供服务,要实现本层协议还需使用下层提供的服务。

4. 传输层协议TCP、UDP

4.1 TCP (Transmission Control Protocol,传输控制协议)

TCP是整个TCP/IP协议族中最重要的协议之一。它在IP提供的不可靠数据服务的基础上为应用程序提供了一个可靠的、面向连接的、全双工的数据传输服务。
TCP的特点:可靠传输、连接管理、差错校验和重传、流量控制、拥塞控制、端口寻址;其中流量控制采用的是:可变大小的滑动窗口协议
TCP是如何实现可靠性的呢?最主要和最重要的是TCP采用了重发(Retransmission) 技术。具体来说,在TCP传输过程中,发送方启动一个定时器,然后将数据包发出,当接收方收到了这个信息时就给发送方一个确认(Acknowledgement)信息。如果发送方在定时器到点之前没有收到这个确认信息,就重新发送这个数据包。
在这里插入图片描述
TCP建立连接时三次握手,断开连接时四次挥手

4.2 UDP(User Datagram Protocol, 用户数据报协议)

UDP是一种不可靠的、无连接的协议,可以保证应用程序进程间的通信。与TCP相比,它的错误检测功能要弱得多。可以这样说,TCP有助于提供可靠性;而UDP有助于提高传输的高速率性。例如,必须支持交互式会话的应用程序(如FTP等)往往使用TCP;而自己进行错误检测或不需要错误检测的应用程序( 如DNS、SNMP等)往往使用UDP。
UDP协议软件的主要作用是将UDP消息展示给应用层,它并不负责重新发送丢失的或出错的数据消息,不对接收到的无序IP数据报重新排序,不消除重复的IP数据报,不对已收到的数据报进行确认,也不负责建立或终止连接。这些问题是由使用UDP进行通信的应用程序负责处理的。
TCP虽然提供了一个可靠的数据传输服务,但它是以牺牲通信量来实现的。也就是说,为了完成同样一个任务,TCP需要更多的时间和通信量。这在网络不可靠的时候通过牺牲一些时间换来达到网络的可靠性是可行的,但在网络十分可靠的情况下,则可以采用UDP,通信量的浪费就会很小。

4.3 小结

  1. TCP和UDP协议均提供了端口寻址功能,连接管理、差错校验和重传以及流量控制均为TCP独有的功能

5. HTTPS和HTTP的区别

  1. HTTPS协议需要到CA申请证书
  2. HTTP是超文本传输协议,信息是明文传输,HTTPS则是具有安全性的SSL加密传输协议
  3. HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443
  4. HTTP的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比HTTP协议安全

6. IP地址与MAC地址的区别

  1. IP地址长度32或128位,MAC地址的长度48位
  2. IP地址是网络层逻辑地址,MAC地址是数据链路层物理地址
  3. IP地址通常基于网络拓扑分配,可以是动态或静态分配,而MAC地址基于制造商分配,是全球唯一的。

7. 计算机网络中A,B,C类子网的划分

在计算机网络中,IP地址通常按照不同的类别进行划分,包括A、B、C类子网,每个类别都有不同的IP地址范围和子网掩码。以下是它们的划分:

  1. A类子网:
    • IP地址范围:1.0.0.0 到 126.0.0.0
    • 子网掩码:255.0.0.0
    • A类IP地址的第一个字节用于网络标识,而后面的三个字节用于主机标识。这使得A类子网非常适合大型网络,因为它们可以支持大约16,777,214个主机。
  2. B类子网:
    • IP地址范围:128.0.0.0 到 191.0.0.0
    • 子网掩码:255.255.0.0
    • B类IP地址的前两个字节用于网络标识,后面的两个字节用于主机标识。B类子网适用于中型网络,每个子网可以支持大约65,534个主机。
  3. C类子网:
    • IP地址范围:192.0.0.0 到 223.0.0.0
    • 子网掩码:255.255.255.0
    • C类IP地址的前三个字节用于网络标识,最后一个字节用于主机标识。C类子网适用于小型网络,每个子网可以支持大约254个主机。

这些类别的子网划分是根据IP地址的第一个字节(A类是0-127,B类是128-191,C类是192-223)来定义的。请注意,上述划分是传统的IP地址类别划分,而在实际网络中,CIDR(无类别域间路由)和子网划分技术更常用,允许更灵活的IP地址分配和子网化。这些方法允许更有效地管理IP地址资源,同时满足网络需求。
4. 当有子网时,IP地址 = 网络号 + 子网号 + 主机号
5. 在计算一个IP地址块包含多少个主机地址时,因为全为0的000000和全为1的111111通常不作为主机号,所以要减2

8. Windows命令

  1. ipconfig命令
    在这里插入图片描述
  2. 使用ping命令进行网络检测,按照由近及远原则,首先执行的是ping 127.0.0.1,其次是ping 本地IP,再次是ping 默认网关,最后是ping 远程主机
  3. Netstat命令用于显示网络连接、路由表和网络接口信息,可以让用户得知有哪些网络连接正在运作,使用时如果不带参数,Netstat 显示活动的TCP连接
  4. Msconfig命令用于Windows配置的应用程序
  5. nslookup命令可以从本地DNS服务器中查看所有的IP地址和域名信息(它就像一本互联网电话簿)。例如,想要找到www.baidu.com的IP地址就可以使用nslookup命令。nslookup命令对于解决DNS问题也是非常有用的。

在这里插入图片描述

9. 其他

  1. 对于一个统一资源定位符(URL)“http://www.abc.com”,'http’是协议名,'www’是主机名,'abc.com’是域名;在地址栏中输入www.abc. com默认使用http协议;
  2. 127.0.0.1是本地回送地址,当网络连接不可用时,为了测试编写好的网络程序,通常使用的目的主机IP地址为127.0.0.1
  3. IPv4所能表示的IP地址个数为232个,IPv6所能表示的IP地址个数为2128个
  4. 在安全通信中,S将所发送的信息使用(S的私钥)进行数字签名, T收到该消息后可利用(S的公钥)验证该消息的真实性

数据结构

1. 查找算法

  1. 平衡二叉树:从左到右排列同层次的结点,其关键字呈现有序排列的特点

2. 排序算法选择

  1. 基本有序----选择插入排序

3. 关键路径问题

  1. 从最开始求出各节点的最早发生时间(多个时间取最晚)
  2. 从最后求出个节点的最晚发生时间(多个时间取最早)
  3. 求每条边的最早发生时间(等于前边节点的最早发生时间)
  4. 求每条边的最晚发生时间(等于后面节点的最晚发生时间减去边的用时)
  5. 求出每条边的时间余量(等于最晚发生时间减去最早发生时间)
  6. 时间余量为零的边称为关键活动组成关键路径。关键路径的时间即为工程完成的最早时间

更多详细知识请看博主下面的两篇文章:

  1. 数据结构考点—查找
  2. 数据结构考点—排序

数据库

1. 关系模式的范式

1.1 第一范式(1NF)

定义:设R是一个关系模式,R属于第一范式当且仅当R中每一个属性A的值域只包含原子项,即不可分割的数据项。

1NF不能排除数据冗余和更新异常等问题,因为其中可能存在部分函数依赖。
反例:

(下图中工资属性的值域不是原子项,还有子属性,不满足第一范式)
在这里插入图片描述

改成如下关系模式,则满足第一范式
在这里插入图片描述

1.2 第二范式(2NF)

定义:设R是一个关系模式,R属于第二范式当且仅当R是1NF,且每个非主属性都完全函数依赖于候选码。

属于2NF的关系模式R也可能存在数据冗余和更新异常等问题,因为其中可能存在传递函数依赖。但不属于2NF的关系模式R会产生插入异常、删除异常和修改复杂等问题。

1.3 第三范式(3NF)

定义:设R是一个关系模式, R属于第三范式当且仅当R是2NF,且每个非主属性都非传递函数依赖于候选码。

一个不属于3NF的关系模式R会产生插入异常、删除异常和修改复杂等问题。属于3NF的关系模式R可能存在主属性对码的部分依赖和传递依赖。

小结:
1NF解决"非主属性对码的部分函数依赖"问题后成为2NF,2NF解决"非主属性对码的传递函数依赖"后成为3NF

软件工程

1. 开发方法/开发模型的选择

  1. 原型化方法-----用户需求不清晰且经常发生变化,但系统规模不太大且不太复杂
  2. 结构化方法-----系统规模不太大且不太复杂,需求变化也不大
  3. 瀑布模型将开发阶段描述为一个阶段瀑布股的转换到另一个阶段的过程;原型模型中,开发人员快速地构造整个系统或者系统的一部分以理解或者澄清问题;螺旋模型将开发活动和风险管理结合起来,以减小风险;喷泉模型开发过程以用户需求为动力,以对象为驱动,适合于面向对象的开发方法。
  4. 开发大型软件时,大型软件系统的需求往往难以在前期确定,所以瀑布模型最不适合。瀑布顾名思义需求快速确定,但是大型软件不能这么快

2. 软件测试

2.1 白盒测试

常用的白盒测试用例设计方法有
语句覆盖、判定覆盖、条件覆盖、条件判定覆盖、条件组合覆盖、路径覆盖等
发现错误的能力呈由弱至强的变化。

  • 语句覆盖每条语句至少执行一次。
  • 判定覆盖每个判定的每个分支至少执行一次
  • 条件覆盖每个判定的每个条件应取到各种可能的值
  • 判定/条件覆盖同时满足判定覆盖条件覆盖
  • 条件组合覆盖每个判定中各条件的每一种组合至少出现一次
  • 路径覆盖使程序中每一条可能的路径至少执行一次。

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

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

相关文章

高压防触电警示牌是什么

在现代社会中&#xff0c;电力已成为人们生活中不可或缺的能源之一。随着电力行业发展&#xff0c;电力设施也不断增多&#xff0c;电力安全成为人们关注的一个重要话题。电力事故可能导致人员伤亡、财产损失甚至社会安全问题。因此&#xff0c;为了提醒人们注意远离带电设备&a…

vue前端项目到后端执行逻辑——自己改的话要怎么改

文章目录 vue前端项目到后端流程——自己改的话要怎么改 vue前端项目到后端流程——自己改的话要怎么改

07 Python进阶:多线程

python线程概念 在 Python 中&#xff0c;线程&#xff08;Thread&#xff09;是用于实现多任务并发执行的基本单元。线程允许程序同时执行多个部分&#xff0c;每个部分称为一个线程&#xff0c;因此能够提高程序的效率&#xff0c;特别适用于需要同时执行多个任务的情况。下面…

docker-compose安装dozzle

dozzle是一个docker日志的webui工具 安装配置 docker-compose.yaml version: "3" services:dozzle:container_name: dozzleimage: amir20/dozzle:v4.11.4volumes:- /var/run/docker.sock:/var/run/docker.sockrestart: unless-stoppedports:- 20342:8080networks:cu…

HarmonyOS4.0 ArkUI常用组件

一、Image 语法&#xff1a; Image(src:string|PixelMap|Resource)使用方式&#xff1a; string格式&#xff1a;用来加载网络图片&#xff0c;需要在module.json5中申请网络访问权限&#xff1a;ohos.permission.INTERNET Image("http://xxx.png")PixelMap格式&am…

Windows11安装MySql-8.0.36安装详细教程(保姆级教程)

之前一直用的mysql5.7&#xff0c;最近导入一个项目一直报错&#xff0c;经查阅发现数据库mysql版本太老&#xff0c;今天特地重头下载安装配置一下&#xff0c;做个记录供大家参考。 下载安装包&#xff1a; 下载地址&#xff1a;https://dev.mysql.com/downloads/ 进入后选…

如何在WHM面板上创建cPanel账户

本周有一个客户&#xff0c;购买Hostease的独立服务器并选择了WHM控制面板&#xff0c;询问我们的在线客服&#xff0c;如何在WHM面板上创建cPanel账户。我们为用户提供教程&#xff0c;用户很快完成了设置。在此&#xff0c;我们分享这个操作教程&#xff0c;希望可以对您有帮…

使用Springboot配置生产者、消费者RabbitMQ?

生产者服务 1、引入依赖以及配置rabbitmq 此时我们通过使用springboot来快速搭建一个生产者服务 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId> </dependency> applica…

智慧数字乡村解决方案大全:标准规范顶层设计指南、供应商整体解决方案及售前PPT、数字乡村标准白皮书等全套460份,一次性打包下载

关键词&#xff1a;数字乡村解决方案&#xff0c;数字乡村标准白皮书&#xff0c;数字乡村建设成功案例&#xff0c;数字乡村发展行动计划&#xff0c;数字乡村建设方案&#xff0c;数字乡村云平台&#xff0c;数字乡村建设指南&#xff0c;智慧乡村建设解决方案&#xff0c;智…

【游戏分析】非游戏领空追字符串来源

通过NPC名称找NPC数组 扫描 NPC名字 ASIC型 发现全部都有后缀 那么采用 字节集的方式去扫描 也是扫不到 说明:不是ASIC型字符串 扫描 NPC名字 Unicode型 没有结果 那么转换成字节集去扫描 终于发现结果了 把结果挨个修改字符串 发现 其中两个是可以用的 22和23 …

什么是超导悬浮?工作原理是什么?

某些材料在冷却到某个温度&#xff08;也称为“临界温度”&#xff09;以下时会完全失去电阻。 1910 年&#xff0c;一位名叫 Heike Kamerlingh Onnes 的荷兰物理学家发现了这一现象。他注意到低于一定温度时电阻突然下降&#xff0c;然后他大胆地声称发现了一种新的物质状态&a…

C++ 【桥接模式】

简单介绍 桥接模式属于 结构型模式 | 可将一个大类或一系列紧密相关的类拆分 为抽象和实现两个独立的层次结构&#xff0c; 从而能在开发时分别使用。 聚合关系&#xff1a;两个类处于不同的层次&#xff0c;强调了一个整体/局部的关系,当汽车对象销毁时&#xff0c;轮胎对象…

觉醒的力量!即使S3,我们应该积极应对,而不是抱怨——早读(逆天打工人爬取热门微信文章解读)

即使S3&#xff0c;我们应该积极应对&#xff0c;而不是抱怨 引言Python 代码第一篇 洞见 觉醒的力量&#xff08;深度好文&#xff09;第二篇 人民日报 来了&#xff01;新闻早班车要闻社会政策 结尾 引言 横眉冷对千夫指&#xff0c;俯首甘为孺子牛 今天迸发出这样的一句话 …

Unity 使用 IL2CPP 发布项目

一、为什么用 IL2CPP Unity的IL2CPP&#xff08;Intermediate Language to C&#xff09;是一个编译技术&#xff0c;它将C#代码转换为C代码&#xff0c;然后再编译成平台相关的二进制代码。IL2CPP提供了几个优点&#xff0c;特别是在性能和跨平台部署方面。以下是IL2CPP的一些…

UI自动化框架搭建以及面试题详解(上)

UI自动化框架搭建以及面试题 UI自动化面试题框架面试题那你讲下如何搭建现成的框架公司里面的框架是你搭建的么请结合你的项目讲解一下你的框架是如何搭建的 PO模式什么是 PO 模式PO 模式的封装原则有哪些 DDT驱动模式什么的项目适合ddt ddt四种模式ddt处理各种类型数据 自动化…

完成产品兼容互认,用KubeBlocks可实现OceanBase集群管理

本文转载自云猿生聊技术&#xff08;CloudNativeDataTech&#xff09; 前言 KubeBlocks&#xff08;简称 KB&#xff09;在最新发布的0.7版本中&#xff0c;通过组件扩展&#xff08;Addon&#xff09;的形式新增了对OceanBase的支持功能。这一更新为企业级和非企业级用户提供…

摄影杂记一

摄影小白&#xff0c;最近买了一台微单&#xff0c;型号是佳能R10&#xff0c;加上18-150套机镜头和佳能RF 50 F1.8定焦镜头。开始学习摄影。 PS&#xff1a;摄影穷三代&#xff0c;单反毁一生。嘿嘿。 一、分镜头拍摄四步提升法 B站&#xff1a;六斤 拍视频三件事&#xff1…

线程池CompletableFuture异步编排复习笔记

一、线程回顾 1.1 初始化线程的 4 种方式 1&#xff09;、继承 Thread public static class Thread01 extends Thread {Overridepublic void run() {System.out.println("当前线程&#xff1a;" Thread.currentThread().getId());int i 10 / 2;System.out.print…

十分钟搞定TCP三次握手面试

三次握手过程 1.客户端与客户端都处于close状态&#xff0c;服务器主动对某端口进行监听后处于LISTEN状态 2.客户端将SYN标志位置为1&#xff0c;向服务器发,SYN和初始序列号seq后处于SYN_SENT状态 2.服务器处于LISTEN状态&#xff0c;收到客户端发来的请求后将SYN和ACK的标志…

基于DCT和扩频的音频水印嵌入提取算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ......................................................................... N 10; %嵌入一…