计算机基础知识

这篇具有很好参考价值的文章主要介绍了计算机基础知识。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

参考链接:https://blog.csdn.net/ChineseSoftware/article/details/123176978
https://www.cnblogs.com/8023-CHD/p/11067141.html
https://blog.csdn.net/qq_42033567/article/details/108088514

http与https的区别
  • HTTP 的URL以http:// 开头,而HTTPS 的URL 以https:// 开头
  • HTTP的默认端口是80,而HTTPS的默认端口是443
  • 在OSI网络模型中,HTTP工作于应用层,而HTTPS的安全传输机制工作在传输层
  • HTTP是明文传输,HTTPS 在 HTTP 的基础上加入了 SSL 协议,SSL 依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。
  • HTTP的连接很简单,是无状态的。HTTPS是由SSL+HTTP构建的可进行加密传输、身份认证的网络协议,比HTTP安全。
Linux常用命令

cd 命令切换目录
ls 命令查看当前目录下的文件
	-l:列出长数据串,包含文件的属性与权限数据等 
	-a:列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)
pwd 当前目录的绝对路径 
touch 创建文件
mkdir 创建文件夹
mv 移动文件、目录
rm 用于删除文件或目录
vim 用于文件编辑
cat 用于查看文本文件内容
tar 对文件进行压缩与解压缩 压缩:tar -zcf 解压缩:tar -zxf
kill 终止进程
chmod 改变文件权限 r:读权限 w:写权限 x:可执行权限 u:用户 g:同组用户 o:其他用户 a:所有用户
chmod xxx 文件名称
每一位分别表示不同类的权限,每一位的范围为0-7,表示读写执行的权限。
tcp和udp的区别
  • 连接方面,TCP是面向连接的,UDP是无连接的。
  • TCP是面向字节流的,发送数据时会将数据分解为多个小的数据报文进行发送;UDP是基于数据报的,发送数据时会直接打上UDP头将整个报文发送出去。
  • TCP只支持一对一通讯;而UDP支持一对一、一对多、多对一、多对多通讯。
  • TCP要求实时性低、准确度高;UDP要求实时性高、准确度低。
  • TCP头部20-60字节,UDP头部8个字节。
  • TCP提供可靠的传输服务,通过TCP连接传输的数据,无差错、不重复、按序到达;UDP尽最大努力进行交付,不保证可靠交付。
    基于TCP的应用层协议有:SMTP(简单邮件传输协议)、TELNET(远程登录服务协议)、HTTP(超文本传输协议)、FTP(文件传输协议)。
    基于UDP的应用层协议:NFS(网络文件系统)、SNMP(简单网络管理协议)、DNS(主域名称系统)、TFTP(简单文件传输协议)。
cookie和session区别
  • cookie通过在客户端记录信息确定用户身份,session通过在服务器端记录信息确定用户身份。
  • cookie不是很安全,考虑安全应当使用session。
  • 因为session会在一定时间保存在服务器上,当访问增多,会比较占用服务器性能,考虑到减轻服务器性能方面,应当使用cookie。
  • 单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
  • 可以考虑将登陆信息等重要信息存放为 session,其他信息如果需要保留,可以放在 cookie 中。
进程和线程的区别

1.根本区别:进程是操作系统进行资源分配的最小单位,线程是操作系统进行任务调度的最小单位。
2.从属关系不同:进程中包含了线程,线程属于进程。
3.开销不同:进程的创建、销毁和切换的开销都远大于线程。
4.拥有资源不同:每个进程都有自己的内存空间,一个进程中的线程会共享这些内存空间。
5.CPU利用率不同:进程的CPU利用率较低,因为上下文切换开销较大,而线程的CPU利用率高,上下文的切换速度快。
6.操纵者不同:进程的操纵者一般是操作系统,线程的操纵者一般是编程人员。

线程有哪几种状态

线程通常都有5种状态,创建、就绪、运行、阻塞和死亡。
创建: 在生成线程对象,并没有调用该对象的start方法,这时线程处于创建状态。
就绪: 当调用了线程对象的start方法后,该线程就进入了就绪状态,当调用了线程对象的start方法后,该线程就进入了就绪状态。此时线程调度程序还没有把该线程设置为当前线程。当线程从等待或者睡眠中回来后也会处于就绪状态。
运行: 线程调度程序将处于就绪状态的线程设置为当前线程,此时线程就进入了运行状态,开始执行run函数中的代码。
阻塞: 线程正在运行时,因为等待某个资源被暂停进入阻塞状态。sleep、suspend等方法都能导致线程阻塞。
死亡: 如果一个线程的run方法执行结束,该线程就会死亡。

http的三次握手和四次挥手
三次握手

计算机基础知识

  • 第一次握手:客户端发送一个SYN报文,并指明客户端的初始化序列号,此时客户端处于SYN-SENT状态。
  • 第二次握手:服务器收到客户端的SYN报文后,会以自己的SYN报文作为应答,也指定自己的初始化序列号,将客户端的seq+1作为ack的值,表示自己收到了客户端的seq,并请求下一个seq,此时服务器处于SYN-RCVD状态。
  • 第三次握手:客户端收到SYN报文后,会发送一个ACK报文,将ack设为服务器的seq+1,表示已经收到服务器的SYN报文,并发送下一个seq,此时客户端初一ESTABLISHED状态,服务器收到ACK报文后,也处于ESTABLISHED状态,此时,双方已建立起了连接。
    为什么要三次握手?
    通过三次握手可以保证双方的发送和接收能力正常,确保与列好同步,以及防止旧的失效连接请求产生误解,从而建立可靠的链接。
  • 确认双方的发送和接收能力:第一次握手客户端发送SYN报文段到服务器,服务器接收到SYN报文段后,确认客户端的发送能力和自己的接收能力正常。
  • 确保客户端和服务器的序列号同步:在第二次握手时,服务器发送了带有SYN/ACK标志的报文段,其中ACK确认号字段的值为客户端的初始序列号加1,同时,服务器也选择了自己的初始序列号。这样,客户端和服务器都知道对方的初始序列号,并可以同步它们的序列号。
  • 防止已失效的连接请求报文段产生连接:考虑这样一种情况,客户端发送了一个连接请求报文段,但因网络延迟等原因导致该报文段长时间滞留,过了一段时间后,客户端重新发送了一个新的连接请求报文段并成功建立连接。此时,滞留的旧报文段可能会到达服务器,如果只进行两次握手,服务器会认为这是一个新的连接请求并建立连接,而实际上客户端可能已经关闭了该连接。通过三次握手,可以让服务器确认客户端对连接的真实意图。
http的四次握手

计算机基础知识

  • 第一次挥手:客户端会发送一个FIN报文,报文会指定一个序列号,此时客户端处于FIN-WAIT1状态。
  • 第二次挥手:服务端收到FIN报文后,会发送ACK报文,并且把ack等于客户端序列值+1表示已经收到客户端的FIN报文了,此时服务端处于CLOSE-WAIT状态。客户端收到服务端的ACK报文后,进入FIN-WAIT2。
  • 第三次挥手:服务端传输完剩余数据后,服务端想断开连接,会发送FIN报文,且指定一个序列号,此时服务端处于LAST-ACK状态。
  • 第四次挥手:客户端收到FIN后,发送ACK报文进行应答,seq=服务器的ack,ack=服务器的seq+1,此时客户端处于TIME-WAIT状态,需要过一阵子以确保服务器收到自己的ACK报文进入CLOSE状态,服务器收到ACK报文后,也进入CLOSE状态。

为什么要四次挥手?

  • 为了保证在最后断开的时候,客户端能够发送最后一个ACK报文段能够被服务器接收到。如果客户端在收到服务器给它的断开连接的请求之后,回应完服务器就直接断开连接的话,若服务器没有收到回应就无法进入CLOSE状态,所以客户端要等待两个最长报文段寿命的时间,以便于服务器没有收到请求之后重新发送请求。
  • 防止“已失效的连接请求报文”出现在连接中,在释放连接的过程中会有一些无效的滞留报文,这些报文在经过2MSL的时间内就可以发送到目的地,不会滞留在网络中。这样就可以避免在下一个连接中出现上一个连接的滞留报文了。

为什么需要接收方最后等待2MSL
1MSL表示一个1个最长报文段的寿命。
接收方等待最后一次ack+重发的第三次释放连接请求到达发送方的时间<=2MSL,因此需要等待2MSL。
本质原因是网络是不可靠的,所以TIME_WAIT状态就是用来重发可能丢失的ACK报文。如果发送方的最后一次ack没有被接收方收到的话,那么接收方会进行重传第三次的释放连接请求,TIME_WAIT就是为了在这种情况下重发丢失了的ack报文。

TCP为什么是可靠的
可靠传输就是通过TCP连接传送的数据是没有差错、不会丢失、不重复并且按序到达的。TCP通过序列号、检验和、确认应答信号、重发机制、连接管理、窗口控制、流量控制、拥塞控制一起保证TCP传输的可靠性。文章来源地址https://www.toymoban.com/news/detail-498538.html

  • 确认应答 (1)发送端每次发送数据时,TCP就给每个数据包分配一个序列号并且在一个特定的时间内等待接收端对分配的这个序列号进行确认,如果发送端在一个特定时间内没有收到接收端的确认,则发送端会重传此数据包。(2)接收端利用序列号对接收的数据进行确认,以便检测对方发送的数据是否有丢失或者乱序等,接收端一旦收到已经顺序化的数据,它就将这些数据按正确的顺序重组成数据流并传递到高层进行处理。
  • 超时重传 TCP协议要求在发送端每发送一个报文段,就启动一个定时器并等待确认信息;接收端成功接收新数据后返回确认信息。若在定时器超时前数据未能被确认,TCP就认为报文段中的数据已丢失或损坏,需要对报文段中的数据重新组织和重传。发送方没有接收到响应的ACK报文原因可能有两点:(1)数据在传输过程中由于网络原因等直接全体丢包,接收方根本没有接收到。(2)接收方接收到了响应的数据,但是发送的ACK报文响应却由于网络原因丢包了。
  • 拥塞控制 慢启动、拥塞避免、快重传、快恢复
  • 流量控制 如果发送方把数据发送得过快,接收方可能会来不及接收,这就会造成数据的丢失。所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。利用滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制。
    计算机基础知识

到了这里,关于计算机基础知识的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【opencv】计算机视觉基础知识

    目录 前言 1、什么是计算机视觉 2、图片处理基础操作 2.1 图片处理:读入图像 2.2 图片处理:显示图像 2.3 图片处理:图像保存 3、图像处理入门基础 3.1 图像成像原理介绍 3.2 图像分类 3.2.1 二值图像 3.2.2灰度图像 3.2.3彩色图像(RGB) 4、像素处理操作 4.1 读取像素 4.2 修改像素

    2024年02月04日
    浏览(66)
  • 计算机基础知识点汇总

    1、指令是指示计算机执行某种操作的命令,包括操作码和地址码两部分。 2、目前常见的指令系统有复杂指令系统(CISC)和精简指令系统(RISC)。 3、计算机的工作过程:取指令、分析指令、执行指令。 4、未配置任何软件的计算机叫裸机,注意不是指安装过操作系统的计算

    2024年02月10日
    浏览(53)
  • 计算机系统(软考版)----计算机系统基础知识、基本单位与进制(1)

    计算机系统是由 硬件和软件 组成的,它们协同工作来运行程序。计算机的基本硬件系统由 运算器、控制器、存储器、输入设备和输出设备5大部件组成。运算器、控制器等部件被集成在一起统称为中央处理单元(Central Processing Unit,CPU) 。(标黄这个需要记忆) CPU是硬件系统的

    2024年01月22日
    浏览(65)
  • 计算机网络安全基础知识复习

    计算机安全: 对于一个自动化的信息系统,采取措施确保信息系统资源(包括硬件、软件、固件、信息数据和通信)的完整性,可用性和保密性。 目标/服务: 认证;访问控制;数据保密性;数据完整性,不可否认性,可用性. 安全攻击 :任何危及信息系统安全的行为。 安全机

    2024年02月09日
    浏览(48)
  • 计算机视觉基础知识(十三)--推理和训练

    Supervisied Learning 输入的数据为训练数据; 模型在训练过程中进行预期判断; 判断错误的话进行修正; 直到模型判断预期达到要求的精确性; 关键方法为分类和回归 逻辑回归(Logistic Regression) BP神经网络(Back Propagation Neural Network) Unsupervisied Learning 没有训练数据; 模型基于无标记数据

    2024年02月22日
    浏览(141)
  • 计算机视觉基础知识(八)--点云模型

    三维图像 一种特殊的信息表达形式; 特征是表达的空间中有三个维度的数据; 是对一类信息的统称; 信息的表现形式: 深度图:以灰度表达物体与相机的距离 几何模型:由cad软件建立 点云模型:所有逆向工程设备都将物体采样为点云 和二维图像相比; 三维图像借助第三

    2024年01月25日
    浏览(54)
  • 第二章:计算机系统基础知识之计算机网络

      计算机网络是利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,并依靠网络软件及通信协议实现资源共享和信息传递的系统。   计算机网络技术主要涵盖 通信技术、网络技术、组网技术和网络工程 等四个方面。 数据通信

    2024年04月27日
    浏览(55)
  • 【OpenCV】计算机视觉图像处理基础知识

    目录 前言 推荐 1、OpenCV礼帽操作和黑帽操作 2、Sobel算子理论基础及实际操作 3、Scharr算子简介及相关操作 4、Sobel算子和Scharr算子的比较 5、laplacian算子简介及相关操作 6、Canny边缘检测的原理 6.1 去噪 6.2 梯度运算 6.3 非极大值抑制 6.4 滞后阈值 7、Canny边缘检测的函数及使用

    2024年02月05日
    浏览(58)
  • 信息系统项目管理的计算机基础知识

    1、信息 信息是确定性的增加。单位为比特(bit)。 2、信息系统 信息系统是通过输入数据,然后进行加工处理,最后产生信息的系统。面向管理和支持生产是信息系统的显著特点。 1)信息系统抽象模型 2)信息系统生命周期 系统规划(可行性分析与项目开发计划),系统分

    2024年02月14日
    浏览(46)
  • 【计算机编程语言】HTML-前端基础知识

    学习网站:https://jquery.cuishifeng.cn/index.html HTML5+CSS3 1.1什么是HTML Hyper Text Markup Language - (超文本标记语言) 超文本:文字、图片、音频、视频、动画等 W3C:World Wide Web Consortium - 万维网联盟 - 中立性技术标准机构 W3C标准 结构 化标准语言(HTML、XML) 表现 标准语言(CSS) 行为

    2024年02月15日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包