读书笔记
文章平均质量分 95
摘抄书中精华加上自己理解作为笔记
捕获一只小肚皮
沉心静气,一往无前
展开
-
汉明码(海明码)解析
相信使用过光盘的读者都会有这样一种经历,如果不小心刮花了盘面,大部分情况下,把它放进DVD机器却仍然可以播放视频,这是为什么呢?什么意思呢?假设光盘存储的内容为:,那么实际光盘会有三份这样的内容,假设我们在光盘某个位置刮花了,即二进制数据可能被修改了,那么当进行播放前,会将三份内容按照下面规则进行排列检验:但是这样就会比较浪费存储空间,因为要存储一份内容,却要多花两倍空间,那怎么解决呢?这就是本文将要引入的汉明码问题解析;它所需要的检验错误的空间,只占整个内容的非常小一部分,它怎么实现的呢?我们慢慢道来在原创 2022-12-08 00:28:34 · 9950 阅读 · 11 评论 -
冯诺依曼体系各硬件工作原理解析
1946年,美国发明了世界上第一台计算机ENIAC,可用于比较快速的数据计算,但是其运算速度却受到了人工数据的输入速度的限制,为此我们现在所广为人熟悉的大佬 冯诺依曼提出了程序存储的概念:当采用程序存储概念以后的计算机,其运算速度得到了明显提升,比如第一台采用冯诺依曼体系结构的计算机,翻译过来就是电子离散变量自动计算机;冯诺依曼体系结构由五大设备组成,分别是: 输入设备, 运算器, 控制器, 存储器和输出设备,它们之间的关系如下:输入设备的作用是: 将信息转换为机器能识别的形式,即二进制数据;运算器设备的作原创 2022-12-07 00:13:14 · 7841 阅读 · 9 评论 -
剩余内存无法满足申请时,系统会怎么做?
当我们向操作系统申请内存时候,是否有想过一个问题:如果当前系统物理内存不足以支撑我们所需要的空间容量,操作系统会进行哪些的相关处理来保证满足我们的要求?答案是涉及接下来我们要讲解的几个方面内存的分配机制, 回收可回收内存, 如何在保证性能的其拉提下满足要求,以及如何保证不被OOM机制处死现代操作系统大部分都是使用虚拟内存的页或者段页式内存管理机制,当我们使用malloc等内存申请函数调用时候,所分配到的空间实际是虚拟内存,并不会分配到物理内存,当程序下次进行读取该内存时,CPU就会去访问该虚拟内存,然后发现原创 2022-12-03 10:52:37 · 5716 阅读 · 1 评论 -
操作系统导论--受限制的直接执行
为了保存当前正在运行的进程的上下文,操作系统会执行一些底层汇编代码,来保存通用寄存器、程序计数器,以及当前正在运行的进程的内核栈指针,然后。原创 2022-11-24 23:21:22 · 5803 阅读 · 3 评论 -
网络是怎样连接的--TCP大致控制流程
协议栈的内部结构中上下关系是有一定规则的,上面的部分会向下面的部分委派工作,下面的部分接受委派的工作并实际执行;当然,这一上下关系只是一个总体的规则,其中也有一部分上下关系不明确,或者上下关系相反的情况,所以也不必过于纠结。再下面就是操作系统内部,其中包括协议栈:协议栈的有两块,分别是负责用TCP协议收发数据的部分和负责用UDP协议收发数据的部分,它们会接受应用程序的委托的操作。.协议栈的是用IP协议控制网络包收发操作的部分。在互联网上传送数据时,数据会被切分成一个一个的。原创 2022-11-23 17:15:33 · 7296 阅读 · 9 评论 -
网络是怎样连接的--委托协议栈发送消息
这说明,同一台计算机上可能同时存在多个套接字,在这样的情况下,我们就需要一种方法来识别出某个特定的套接字,这种方法就是描述符(其本质是一个数字编号),这样子协议栈就可以根据不同的描述符进行不同的数据操作;Web使用的HTTP协议规定,当Web服务器发送完响应消息之后,应该主动执行断开操作,因此Web服务器会首先调用close来断开连接,断开操作传达到客户端之后,客户端的套接字也便断开了(管道锻炼)。发送数据是一系列操作相结合来实现的,如果不能理解这个操作的全貌,就无法理解其中每个操作的意义。原创 2022-11-21 13:53:02 · 5320 阅读 · 2 评论 -
网络是怎样连接的--DNS服务器查询原理
最下层的www就是服务器的名称。例如负责管理lab.glasscom.com这个域的DNS服务器的IP地址需要注册到glasscom.com域的DNS服务器中,而glasscom.com域的DNS服务器的IP地址又需要注册到com域的DNS服务器中这样我们就可以通过上级DNS服务器查询出下级DNS服务器的IP地址,也就可以向下级DNS服务器发送查询请求了;然而,互联网中存在着不计其数的服务器,将这些服务器的信息全部保存在一台DNS服务器中是不可能的,因此一定会出现在DNS服务器中找不到要查询的信息的情况。原创 2022-11-21 11:12:02 · 5511 阅读 · 0 评论 -
网络是怎样链接的--向DNS服务器查询Web服务器的IP地址
这个过程与浏览器生成要发送给Web服务器的HTTP请求消息的过程类似,解析器会根据DNS的规格,生成一条表示“请告诉我www.lab.glasscom.com的IP地址的数据,并将它发送给DNS服务器(上图③)。其中“号”对应某个子网(整体)的,而“室”对应某个子网中的计算机,这就是网络中的地址(IP). “号”对应的号码称为网络号,“室”对应的号码称为主机号,这个地址的整体称为IP地址,通过IP地址我们可以判断出访问对象服务器的位置,从而将消息发送到服务器。的集合,其他的应用程序都需要使用其中的组件。原创 2022-11-20 23:51:16 · 6051 阅读 · 0 评论 -
网络是怎样连接的--生成HTTP请求消息过程
网址,准确来说应该叫URL,比如以http://开头的那一串东西.但实际上除了“http:”,网址还可以以其他一些文字开头,例如“ftp:”“file:”“mailto:”等。,因此它需要一些东西来判断来访问相应的数据,而各种不同的URL就是用来干这个的,比如访问Web服务器时用“http:”,而访问FTP服务器时用“ftp:”,也就是说我们可以把这部分理解为访问时使用的协议类型。原创 2022-11-20 22:10:05 · 5768 阅读 · 0 评论