![](https://img-blog.csdnimg.cn/20201214212037499.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
计算机网络/软件工程/Linux
文章平均质量分 78
计算机网络软件工程//Linux
燕双嘤
程序辅导,毕业设计,课程作业,比赛代打等,17724838277
展开
-
计算机网络:应用层(DNS,HTTP,HTTPS)
每个应用层协议都是为了解决某一类应用问题,而问题的解决又往往是通过位于不同主机中的多个应用进程之间的通信和协同工作来完成的。应用层的具体内容就是规定应用进程在通信时所遵循的协议。1,域名系统DNS1.1,域名系统概述许多应用层软件经常直接使用域名系统 DNS,但计算机的用户只是间接而不是直接使用域名系统。互联网采用层次结构的命名树作为主机的名字,并使用分布式的域名系统 DNS。名字到 IP 地址的解析是由若干个域名服务器程序完成的。域名服务器程序在专设的结点上运行,运行该程序的机器.原创 2020-10-29 11:54:47 · 1438 阅读 · 0 评论 -
计算机网络:运输层(流量控制,拥塞控制,连接管理)
7,TCP的流量控制7.1,利用滑动窗口实现流量控制一般说来,我们总是希望数据传输得更快一些。但如果发送方把数据发送得过快,接收方就可能来不及接收,这就会造成数据的丢失。流量控制就是让发送方的发送速率不要太快,既要让接收方来得及接收,也不要使网络发生拥塞。利用滑动窗口机制可以很方便地在 TCP 连接上实现流量控制。 B 向 A 发送了零窗口的报文段后不久,B 的接收缓存又有了一些存储空间。于是 B 向 A 发送了 rwnd = 400 的报文段。但这个报文段在传送过程中丢失了。A一原创 2020-10-28 17:29:58 · 1379 阅读 · 0 评论 -
计算机网络:运输层(概述,UDP,TCP,可靠传输)
1,运输层协议概述1.1,进程之间的通信从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是用户功能中的最低层。当网络的边缘部分中的两个主机使用网络的核心部分的功能进行端到端的通信时,只有位于网络边缘部分的主机的协议栈才有运输层,而网络核心部分中的路由器在转发分组时都只用到下三层(物理层,数据链路层,网络层)的功能。 网络层是为主机之间提供逻辑通信,而运输层为应用进程之间提供端到端的逻辑通信。在一台主机中经常有多个应用进程同时分别和另一原创 2020-10-27 21:33:36 · 1360 阅读 · 0 评论 -
计算机网络:网络层(路由选择协议,IPv6,IP多播,虚拟专用网络)
5,互联网的路由选择协议5.1,有关路由选择协议的几个基本概念理想的路由算法算法必须是正确的和完整的。算法在计算上应简单。 算法应能适应通信量和网络拓扑的变化,这就是说,要有自适应性。 算法应具有稳定性。 算法应是公平的。算法应是最佳的。 最佳路由所谓“最佳”只能是相对于某一种特定要求下得出的较为合理的选择而已。实际的路由选择算法,应尽可能接近于理想的算法。 问题:它是网络中的所有结点共同协调工作的结果;路由选择的环境往往是不断变化的,而这种变化有时无法事先知道。 路由算法的自适.原创 2020-10-23 11:18:52 · 962 阅读 · 0 评论 -
计算机网络:网络层(提供服务,IP,子网和超网,ICMP)
1,网络层提供的两种服务1.1,面向连接通信之前先建立虚电路,以保证双方通信所需的一切网络资源。如果再使用可靠传输的网络协议,就可使所发送的分组无差错按序到达终点,不丢失、不重复。虚电路表示这只是一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送,而并不是真正建立了一条物理连接。电路交换的电话通信是先建立了一条真正的连接。分组交换的虚连接和电路交换的连接只是类似,但并不完全一样。 1.2,无连接网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。网络在发原创 2020-10-23 10:16:55 · 1290 阅读 · 1 评论 -
计算机网络:数据链路层
IEEE注册机构RA是局域网全球地址的法定管理机构,它负责分配地址字段的6个字节中的前三个字节。其要点就是不改变网络的拓扑结构,但是在逻辑上切断某些链路,使得从一台主机到所有其他主机的路径是无环路的树状结构,从而消除了兜圈子现象。当一个站检测到信号电压摆动超过一定的门限值时,就认为总线上至少有两个站在发送数据,表明发生了碰撞。在发生碰撞时,总线上传输的信号产生了严重的失真,无法从中会恢复出有用的信息来。,用硬件转发,其转发速率要比使用软件转发的网桥快的多。相互通信的主机都是独占传输媒体,无碰撞地传输数据。原创 2020-10-18 18:45:01 · 1713 阅读 · 0 评论 -
计算机网络:物理层
1,物理层的基本概念(1)物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。(2)物理层的作用是要尽可能地屏蔽掉不同传输媒体和通信手段的差异。(3)用于物理层的协议也常称为物理层规程 (procedure)。任务:确定与传输媒体接口的一些特性机械特性 指明接口所用接线器的形状和尺寸,引线数据和排列,规定和锁定装置等。 电器特性 指明在接口电缆的各条线上出现的电压的范围。 功能特性 指明某条线上出现的某一电平的电压表示何种原创 2020-10-14 21:29:44 · 479 阅读 · 1 评论 -
计算机网络:概述
21 世纪的一些重要特征是数字化、网络化和信息化,它是一个以网络为核心的信息时代。网络现在已经成为信息社会的命脉和发展知识经济的重要基础。三网:发展最快的并起到核心作用的是计算机网络。电信网络 提供电话,电报及传真等服务有线电视网络 向用户传送各种电视节目计算机网络 使用户能在计算机之间传送数据文件随着技术的发展,网络技术相互融合:电信网络和有线电视网络都逐渐融入了现代计算机网络技术,扩大了原有的服务范围;计算机网络也能够向用户提供电话通信、视频通信以及传送视频节目的服务。从理论上讲,原创 2019-08-12 14:02:42 · 678 阅读 · 0 评论 -
软件工程:维护
在软件产品被开发出来并交付用户使用之后,就进入了软件的运行维护阶段。这个阶段是软件生命周期的最后一个阶段,其基本任务是保证软件在一个相当长的时期能够正常运行。软件维护需要的工作量很大,平均说来,大型软件的维护成本高达开发成本的4倍左右。软件工程的主要目的就是要提高软件的可维护性,减少软件维护所需要的工作量,降低软件系统的总成本。1,软件维护的定义所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。可以通过描述软件交付使用后可能进行的4项活动,具体地定.原创 2020-10-27 16:45:14 · 8196 阅读 · 1 评论 -
软件工程:编码和测试
模块测试(单元测试)模块测试的目的是保证每个模块作为一个单元能正确运行。在这个测试步骤中所发现的往往是编码和详细设计的错误。子系统测试(集成测试)子系统测试是把经过单元测试的模块放在一起形成一个子系统来测试。这个步骤着重测试模块的接口。系统测试(集成测试)系统测试是把经过测试的子系统装配成一个完整的系统来测试。在这个过程中不仅应该发现设计和编码的错误,还应该验证系统确实能提供需求说明书中指定的功能,而且系统的动态特性也符合预定要求。这个测试步骤中发现的往往是软件设计中的错误,也可能发现需求说明中的错误。验收原创 2020-10-27 11:11:07 · 6834 阅读 · 0 评论 -
软件工程:详细设计
根本目标:确定应该怎样具体地实现所要求的系统。详细设计阶段的任务不是具体地编写程序,而是要设计出程序的“蓝图”。详细设计的结果基本上决定了最终的程序代码的质量。1,结构程序设计程序的质量与程序中所包含的GO TO 语句的数量成反比。只用“顺序”、“选择”和“循环”控制结构就能实现任何单入口单出口的程序。结构程序设计:如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。结构程序设计(全):结构程序设.原创 2020-10-23 21:33:30 · 10684 阅读 · 0 评论 -
软件工程:总体设计
总体设计的基本目的就是回答“概括地说,系统应该如何实现”这个问题,因此,总体设计又称为概要设计或初步设计。总体设计阶段的另一项重要任务是设计软件的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。1,设计过程1,设想供选择的方案在总体设计阶段分析员应该考虑各种可能的实现方案,并且力求从中选出最佳方案。需求分析阶段得出的数据流图是总体设计的极好的出发点。设想供选择的方案的一种常用的方法是,设想把数据流图中的处理分组的各种可能的方法,抛弃在技术上行不通的.原创 2020-10-21 21:31:47 · 28840 阅读 · 2 评论 -
软件工程:需求分析
虽然可行性研究阶段已经粗略地了解了用户的需求,甚至还提出了一些可行的方案,但是,可行性研究的基本目的是作用于较小成本在较短时间内确定是否存在可行的解法,因此许多细节被忽略。需求分析的任务还不确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪样工作,也就是对目标系统提出完整,准确,清晰,具体的要求。需求分析阶段结束之前,系统分析员应该写出软件需求规格说明书,以书面的形式准确地描述软件需求。基本准则:必须理解并描述问题的信息域,根据这条准则应该建立数据模型。 必须定义软件应完成的功能,.原创 2020-10-20 21:28:52 · 16478 阅读 · 0 评论 -
软件工程:可行性研究
并非任何问题都有简单的解决办法,事实上,许多问题不可能在预定的系统规模或时间期限之内解决。如果问题没有可行的解,那么花费在这项工程上的任何时间,人力,软硬件资源和经费都是无谓的浪费。可行性研究的目的,就是用最小的代价在尽可能短的时间内确定问题是否能够解决。1,可行性研究的任务可行性研究的目的是不解决问题,而是确定问题是否值得去解决。可行性研究最根本的任务是对以后的行动方针提出建议。分析和澄清问题定义:在问题定义阶段初步确定的规模和目标,如果是正确的就进一步加以肯定,如果有错误就.原创 2020-10-16 17:17:56 · 11069 阅读 · 0 评论 -
软件工程:概述
软件是抽象的、不可触摸的,它不受物质材料的限制,也不受物理定律或加工过程的制约:一方面使软件工程得以简化,因为软件的潜能不受物理因素的限制。一方面,由于缺乏自然约束,软件系统也就很容易变得极其复杂,理解它会很困难,改变它的价格。软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。软件工程解决的问题:如何开发软件以满足对软件日益增长的需求和如何维护数量不断膨胀的已有软件。原创 2020-10-14 20:51:05 · 2913 阅读 · 1 评论 -
面向对象:统一建模语言(UML)
面向对象的方式实际上由OOA(面向对象分析)、OOD(面向对象设计)和OOP(面向对象编程)三部分有机组成,其中OOA和OOD的结构需要使用一种方式来描述并记录,目前业界统一采用UML(统一建模语言)来描述并记录OOA和OOD。UML目前最新版本是2.0,它一共包括13种类型的图形,使用这13种图形中的某些就可以很好地描述和记录软件分析、设计的结果。通常而言,没有必要使用13种UML图形,常用的UML图形有:用例图、类图、组件图、部署图、顺序图、活动图和状态图。1,用例图用例图用于描述.原创 2021-07-04 20:33:44 · 2101 阅读 · 1 评论 -
面向对象:结构化开发方法和面向对象开发方法
在目前的软件开发领域有两种主流的开发方法:结构化开发方法和面向对象开发方法。Java语言是纯粹的面向对象的程序设计语言,这主要表现为Java完全支持面向对象的三种基本特征:继承、封装和多态。Java语言完全以对象为中心,Java程序的最小程序单位是类,整个Java程序由一个一个的类组成。Java完全支持使用对象、类、继承、封装、消息等基本概念来进行程序设计,允许从现实世界中客观存在的事物(即对象)出发来构造软件系统,在系统构造中尽可能运用人类的自然思维方式。1,结构化程序设计.原创 2021-07-05 17:40:00 · 6077 阅读 · 0 评论 -
软件项目管理:成本估算法,PERT历时估算法,决策树分析法,挣值分析法
计算未调整功能计数UFC时,应先计算5类功能组件的计数项,其中有内部逻辑文件、外部接口文件、外部输入、外部输出、外部查询。先根据项目实际情况查定级表,再根据定级表查取值表,在计算总和。题目会给出技术复杂因子的均值x,根据公式 TCF = 0.65 + 0.01*(14 * x)求出技术复杂因子。1.2,参数模型估算法-COCOMO模型。:工作量乘数,题目会给出,直接相乘。:软件规模-一般是代码行;1.3,功能点估算法。原创 2020-01-07 19:06:50 · 15490 阅读 · 2 评论 -
需求工程:思维导图
软件需求工程思维导图原创 2019-11-22 10:08:44 · 2885 阅读 · 0 评论 -
软件测试:性能测试(JMH)
Java Microbenchmarking Harness(JMH)是一个用于执行Java微基准测试的强大工具。微基准测试是用于测量代码片段或方法的性能和执行时间的测试。原创 2019-04-17 19:20:05 · 916 阅读 · 0 评论 -
软件测试:静态代码分析插件
不佳实践:常见代码错误,用于静态代码检查时进行缺陷模式匹配(如重写equals但没重写 hashCode,或相反情况等)复杂的表达式:检查不必要的 if 语句,可被 while 替代的 for 循环。未使用代码(Dead code):检查未使用的变量,参数,方法。运行时性能问题(如由变量定义,方法调用导致的代码低效问题等)多线程的正确性(如多线程编程时常见的同步,线程调度问题等)多线程的正确性(如多线程编程时常见的同步,线程调度问题等)导致自身错误的代码(如未确认的强制转换、冗余的空值检查等)原创 2019-03-22 08:53:17 · 6164 阅读 · 0 评论 -
软件测试:JUnit测试,Mock测试
单元测试对程序来说非常重要,它不仅能增强程序的健壮性,而且也为程序的重构提供了依据。目前很多开源项目的测试覆盖率都高达 90%以上,由此可见单元测试的重要性。原创 2019-04-16 18:44:43 · 788 阅读 · 0 评论 -
软件测试:失效,故障,缺陷,错误
软件失效:是指软件运行时产生的一种不希望或不可接受的外部行为,偏离了用户需求。软件故障:在一个计算机程序中出现的不正确的步骤、过程或数据定义常称为故障。是指软件运行时丧失了在规定的限度内执行所需功能的能力,执行输出错误结果,导致失效。失效 故障 面向用户 面向开发者 软件运行偏离用户需求 程序执行输出错误结果 可根据对用户应用的严重性等级分类 可根据定位和排除故障的难度分类 如,3次失效/1000...原创 2019-01-04 15:14:40 · 11933 阅读 · 1 评论 -
Linux应用:安装Nginx
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。原创 2019-09-30 20:20:34 · 8335 阅读 · 0 评论 -
Linux应用:安装Mysql
1,CentOS1.1,安装MySQLwget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm //下载安装包rpm -ivh mysql57-community-release-el7-8.noarch.rpm //安装rpm包yum -y install mysql-server //安装mysql1.2,重启MySQL(注意:mysqld)service mysqld resta原创 2020-12-06 11:06:21 · 379 阅读 · 0 评论 -
Linux应用:安装JDK
源码安装,不需要区分系统。有能力的可以官网下载jdk,或者:链接:https://pan.baidu.com/s/1odrGrRtNZFieJJaYpo0EIg ,提取码:mfyy 。tar -zxvf jdk的压缩包配置环境变量(环境配置信息在/etc/profile)vim /etc/profile在末尾加上三句话(进入jdk文件夹,然后pwd打印出jdk的路径) export JAVA_HOME=/root/jdk/jdk //jdk的路径 exp.原创 2020-12-06 17:01:10 · 198 阅读 · 0 评论 -
Linux应用:安装Python
1,切换Python版本(python2→python3)1.3,切换(修改默认连接)2,Linux升级Conda。原创 2020-12-06 11:00:56 · 931 阅读 · 0 评论 -
Linux:复习重点
ls:列出当前目录中的文件和子目录。cd:切换当前工作目录。pwd:显示当前工作目录的路径。mkdir:创建新目录。rmdir:删除空目录。touch:创建空文件或更新文件的访问时间。cp:复制文件或目录。mv:移动文件或目录,也可用于重命名文件。rm:删除文件或目录。cat:连接和显示文件内容。more / less:逐页查看文件内容。原创 2019-06-26 07:18:30 · 536 阅读 · 0 评论 -
Linux:系统日常管理
一,监控系统的状态w //查看当前系统的负载第一行:当前时间,运行时间,登录用户数,平均负载第二行:当前登录用户名,登录地址等其中大部分都没有用,重点关注第一行的load average(平均负载)第一个参数:一分钟那个内系统的平均负载;第二个参数:五分钟;第三个参数:十五分钟;这个值代表单位时间内CPU的活动进程数,这个值越大表示服务器负载越大。一般不超过C......原创 2019-08-22 10:55:01 · 308 阅读 · 0 评论 -
Linux:进程管理
1,进程的定义进程:通常为二进制程序,放置在存储媒介中(如硬盘、光盘、软盘、磁带等),以物理文件的形式存在。进程:程序被触发后,执行者的权限与属性、程序的代码与所需数据等都会被加载到内存中,操作系统给与这个内存中的单元一个标识符(PID =process ID),可以说进程就是一个正在运行的程序。服务:常驻在内存中的进程。进程的基本状态就绪状态:进程获取了除CPU外的所有所需资源后,就处于就绪状态,所有的处于该状态的进程按照一定方式排列为就绪队列。执行状态:就绪状态的程序.原创 2020-12-02 21:23:46 · 190 阅读 · 0 评论 -
Linux:shell编程
1,HelloWord#author————燕双嘤#Program Description:这是我的测试————程序内容说明#History:2020-12-9————时间echo "Hello Word!"exit 0脚本执行方式的差异(source script、sh script、./script)./script、sh script:该脚本都会使用一个新的bash环境来执行脚本内的命令。也就说使用这种执行方式时,其实脚本是在子进程的bash内执行的。shell内声明的变量原创 2020-12-09 21:27:57 · 132 阅读 · 0 评论 -
Linux:Shell和Bash
Shell是操作系统与用户进行交互操作的界面.Shell是内核kernel的”壳”, 是用来将机器语言和人类语言相互转化而存在的软件层次.Shell是命令语言、命令解释程序及程序设计语言的统称Shell本身就是一个从文件或终端读取命令、解释这些命令并通常执行其他命令的命令Shell它的作用是控制内核为用户工作1.1,自定义变量查看变量echo $PATH设置规则规则 例子 变量与变量内容以一个等号(=)来连接 ...原创 2020-12-04 21:16:37 · 473 阅读 · 0 评论 -
Linux:RPM和yum
一,RPM============结构==============libjpeg-turbo-devel-1.2.1-1.e16.i686.rpmlibjpeg-turbo-devel :包名 1.2.1 :版本信息 1.e16 ...原创 2019-08-20 10:59:41 · 213 阅读 · 0 评论 -
Linux:Vi和Vim
Vim与Vi的区别:Vim具有颜色显示功能,并且还支持许多的程序语法,其他功能完全兼容Vi。1,模式一般命令模式:以vi打开一个文件就直接进入一般命令模式了(这是默认的模式,也简称为一般模式)。在这个模式中,你可以使用【上下左右】按键来移动光标,你可以使用【删除字符】或【删除整行】来处理文件内容,也可以使用【复制、粘贴】来处理你的文件内容。编辑模式:在一般命令模式中可以删除、复制、粘贴等操作,但是却无法编辑文件内容。要等到你按下【i、I、o、O、a、A、r、R】等任何一个字母之后才会进入编.原创 2020-11-30 21:03:00 · 291 阅读 · 0 评论 -
Linux:用户与群组管理
1,用户与用户组1.1,用户分类超级用户(UID=0):root,它具有一切权限,只有进行系统维护(例如建立用户等)或其他必要情形下才用超级用户登录,以避免系统出现安全问题。系统用户(UID=1~999):系统正常工作所必需的内建的用户,主要是为了满足相应的系统进程对文件属主的要求而建立的,系统用户不能用来登录,如bin、daemon、adm、lp等用户。普通用户(UID=1000~60000):是为了让使用者能够使用Linux系统资源而建立的;每个用户都有一个数值,称为UID;1.原创 2020-11-30 21:26:58 · 1365 阅读 · 0 评论 -
Linux:压缩和打包
1,压缩压缩格式:根据后缀名称获取压缩格式,从而知道如何解压缩.Z:compress程序压缩的文件.tar: tar程序打包数据,并未压缩.gz :gzip程序压缩的文件.tar.gz:tar程序打包文件,并且经过gzip的压缩.bz2:bzip2程序压缩的文件.tar.gz:gzip压缩,并使用tar打包的文件1.1,gzip可解压compress,zip与gzip的压缩包。默认情况下不保留原文件,可设置保留原文件。gzip -c:将压缩过程显示到屏幕原创 2020-11-29 21:07:53 · 2953 阅读 · 0 评论 -
Linux:文件与目录管理
1,用户与用户组用户(标识号:UID):一定资源的使用者,可以创建和管理文件以及访问其他用户文件。可以从属于多个群组。用户组(标识号:GID):由一定数量的对某些文件具有相同操作权限的用户组成的小组。可以拥有多个用户。root用户:超级管理员,可以为所欲为。为何要区分用户和用户组?答:一种功能相当健全而且好用的安全防护措施/ect/passwd:所有系统帐号、一般用户以及root的相关信息/ect/shadow:密码记录/ect/group:用户组名2,文件管理原创 2020-11-28 21:29:16 · 237 阅读 · 0 评论 -
Linux:概述、快捷键、目录结构、关机
1,计算机和操作系统计算机:接受使用者输入指令,经由 CPU 的数学与逻辑单元运算处理后, 以产生或储存成有用的信息。计算机的组成:输入单元:例如滑鼠、键盘、读卡机等等 中央处理器(CPU):含有算数逻辑、控制、记忆等单元 输出单元:例如显示器、打印机等等计算机系统的组成:计算机系统由硬件系统和软件系统组成。 硬件系统由运算器、控制器、存储器、输入设备和输出设备等部件组成。 软件系统是指计算机系统所使用的各种程序的集合。从广义上讲,软件是指使运行、维护、管理和应用计算机的所有程序原创 2020-11-25 21:56:52 · 231 阅读 · 0 评论