操作系统&计算机网络
文章平均质量分 94
暖仔会飞
这个作者很懒,什么都没留下…
展开
-
计算机系统学习之(2):MultiProgramming,MultiProcessing,MultiThread 的区别(多程序,多进程,多线程的区别)
首先引用 IBM 给出的定义https://www.ibm.com/docs/en/ztpf/1.1.0.15?topic=processing-multiprocessing-multiprogramming要知道的是,一个 CPU 的核代表的就是 CPU 在某个时刻只能处理一个 process;而多核 CPU 代表的就是某个时刻能同时处理多个 process, 即: Multiprocess。而无论单核还是多核的 CPU 其实都能实现 “看起来”同时运行多个程序;只不过我们在 Multip.原创 2022-03-10 00:39:08 · 1526 阅读 · 0 评论 -
计算机系统学习之(1):基础知识概要——进程、中断、线程、竞态条件、关键区域、死锁、进程调度
文章目录进程的创建哪些事件导致进程的创建fork 和 exec 命令创建和控制进程fork() 命令execve() 命令进程的状态中断中断的种类线程线程共享内容线程独有内容进程和线程的比较线程的好处线程的类别及区别user-level thread(用户级别的线程)user-level thread 的优点user-level thread 的缺点kernel-level thread(内核级别的线程)kernel-level thread 的优点kernel-level thread 的缺点竞态条件Cr原创 2022-03-12 22:25:22 · 2030 阅读 · 0 评论 -
计算机系统学习之(9):密码学部分总结
数字签名通常 可以用来验证信息的完整性和发信人的身份数字签名的过程与加密的过程相反,使用 私钥对明文进行签名,接收方使用公钥来验证假设明文是 m,A 与 B 进行通信,A 将 m 发给 B的时候发送了两个部分:这样 B 收到信息之后只要能用 A 的公钥计算 P_m 只要能够得到 m 就证明发信人的身份是 A但是如果出现了大段的内容,采用这种方式的代价就很大,因此我们需要使用一个 摘要 H(m) 来代替 m 本身,A 只需要对 H(m) 签名,就可以得到签名 m 一样的效果;这个过程中采用的算法是散列算法:.原创 2022-06-14 00:22:06 · 551 阅读 · 0 评论 -
计算机系统学习之(8):认证 (Certificate)
最常使用的验证方式验证请求者是否对网站的域名有一定的控制权例如如果登录一个网站,网站需要你提供一些私人的信息,那么这个时候我们就需要通过查看当前让我们提供身份信息的服务器是否拥有这个网站的控制权,以免是其他身份不明者冒充的在这个例子中,客户端是右边,提供服务的网站在左边首先右边先要求左边的网站执行第一个操作 Put… 这个行为是为了证明当前的网络服务器对这个域名是有操作和控制权的第二步是让网站对一个随机数进行签名,以证明网站具有私钥,证明网站拥有私钥以此证明自己的验证网站身份......原创 2022-06-13 18:03:15 · 759 阅读 · 0 评论 -
计算机网络之(7):TCP流量控制、拥塞控制 + 网络层
对于轻度拥塞(fast retransmission and recovery):CWND 降为原来的一半,然后按照 CA 的方式线性增长对于重度拥塞:CWND 变为 1,然后使用慢启动直到 CWND/2 然后进入 CA 阶段线性增长通过乘性减、加性增的方式可以保证最终的拥塞控制可以达到 fairness and efficiency单纯慢启动的缺点:每次都从 1 开始,效率低结合快速重传(在轻度拥塞的时候)的方法,可以避免从 1 开始的慢启动状态,从而提高拥塞控制的效率NAT 的出现是为了解决原创 2022-06-13 13:48:02 · 1581 阅读 · 0 评论 -
计算机网络之(6):路由选择算法
迭代式的算法,节点定期的与邻居交换距离矢量,因此可以算出目标节点通过这些邻居到达目标的代价值;到每一个目标都可以找到一个最小的代价值,但是需要经过很多步骤的迭代这是一种递归的算法,在当前节点去得到邻居到目标的距离矢量,在邻居也采用同样的算法直到迭代到与目标节点直接连接的节点,然后返回举个例子:...原创 2022-06-12 03:27:35 · 2189 阅读 · 0 评论 -
计算机网络之(5):拥塞控制:网络辅助的拥塞控制 / TCP 端到端的拥塞控制
连接刚建立,CongWin = 1MSS然后在后面没经过一个 RTT 都将传输的段的数量翻倍,直到发生了超时(重度拥塞)或者3个ack(轻度拥塞)如果在 8个 MSS 翻倍成 16 个 MSS 的时候发生了超时,表示 8 MSS 是个警戒值,那么在下一个 RTT 的时候 MSS 又会降为 1 然后随着 RTT 指数增加到 8,如果到 8 依然没事,那么就转为 CA 线性增长试探(因为 8 是上一次超时的警戒值);这时候随着 RTT, MSS 的值逐步为 9, 10, 11, 12 的线性增长。如果这种情况原创 2022-06-11 11:51:09 · 928 阅读 · 0 评论 -
计算机网络之(4):DNS
控制了记录的方式,不同的字段应该记录什么内容当 type=A 的时候,这时候的 domain 和 value 字段中分别存储的就是域名和 ip 地址type=NS 的时候,domain 存的是域名,value 存的是该域名的权威服务器的域名type=CNAME 的时候,Name 为规范名字的别名, value 记录的是规范名字type=MX 的时候,Value 为 Name 对应的邮件服务器的名字应用application 首先向解析器 resolver;解析器作为客户向 local name ser原创 2022-06-11 00:20:18 · 1293 阅读 · 0 评论 -
计算机网络之(3):FTP & Email(SMTP)
FTP 服务器与客户端建立的连接包括 “控制连接” (控制连接也叫带歪连接 out of bound)和 “数据连接”;控制连接负责传输指令,数据连接用来收发数据。数据连接是服务器主动向客户端发起的连接 : 客户端率先向服务器请求 “控制连接”,连接成功之后如果要从服务器下载文件,那么服务器将主动与客户端建立 “数据连接” 然后将数据发送给客户端FTP 的连接也是依靠 TCP 协议在控制连接上,客户端可以向服务器发出一系列的指令FTP 是有状态协议(HTTP 是无状态协议):因此 FTP 需要在服务器上维护原创 2022-06-10 18:26:28 · 3196 阅读 · 0 评论 -
这一篇文章就足够了:Windows系统安装Linux Ubuntu虚拟机的步骤及解决各种坑的方法
文章目录1. 安装步骤1. 1下载 VM Ware151.2 创建一个Ubuntu系统的虚拟机2. 避坑指南第一个坑:在系统安装完毕之后无法启动① “内部错误”:② “以独占方式锁定此配置文件失败”③ 其他的一些常见错误(我没遇到,但可能遇到)第二个坑:Ubuntu系统无法上网1. 安装步骤1. 1下载 VM Ware15http://www.zhanshaoyi.com/10141.html提取码:e29v解压密码 | 关注微信公众号:软件智库(ID:rjzkgzh),回复“解压密码”获取;原创 2020-07-27 07:45:27 · 662 阅读 · 0 评论 -
计算机系统学习之(4):内存管理(1):内存的内容、层级、管理和分配
内存内容text(程序代码,通常是只读的)data(常量,全局变量)stack(局部变量)内存分级内存分级的原因:不同级别的内存速度不同,价格不同对内存的要求:Fastcheaplargenon-volatile 非易失性Caches由硬件控制按照 cache line 进行切分(通常每个 cache line 为 64字节)缓存命中 Cache hit:期待的数据刚好在当前 cache 中缓存缺失 Cache miss:期待的数据不再当前的原创 2022-03-17 18:12:58 · 1173 阅读 · 0 评论 -
计算机系统学习之(7):密码学概述(2)各种不同的加密算法的作用和原理;如何保证信息传输过程的完整性;如何验证信息发送方的身份
文章目录传输的私密性传输的完整性 & 身份认证数字签名 HASHMAC 消息认证码密码学要解决的问题:传输的私密性信息的完整性信息发送方身份的认证传输的私密性这一类问题通过加密和解密传输的内容来保证传输内容不会被除传输和指定接收方以外的其他人知道解决问题的思路有:通过共同的秘钥 secret key 进行对称加密:优点:方便快捷、适合传输大规模的文件和数据缺点:安全性不高,因为秘钥分发的过程存在安全隐患通过公钥私钥对 public/private key p原创 2022-04-02 23:54:47 · 1097 阅读 · 0 评论 -
计算机系统学习之(8):操作系统部分总结
中央处理器 CPU负责从寄存器中取指令并且执行寄存器保存了一些进程的状态信息CPU 进行处理两种模式的指令:kernel 模式:权限大,可以访问所有内存user 模式:权限小,只能访问部分内存MultiprogrammingMultiprogramming 就是让单个 CPU 看起来好像在同时处理几个程序,但是其实只有一个 CPUUser / Kernel mode 切换每个进程在创建的时候都会有一个 mode bit当进程处在 user mode 的时候, mode b原创 2022-04-07 09:45:41 · 674 阅读 · 4 评论 -
计算机系统学习之(3):进程调度算法概览
进程调度关系的问题当前调度哪个进程进行操作调度某个进程多长的时间什么时候会发生调度问题:进程创建的时候(creation)进程退出的时候(exit)进程阻塞的时候(block)进程中断的时候(interrupt)为什么进程调度困难不同的工作负载不同的环境(操作系统)有不同的需求,对下列不同的系统目标是不同的:Batch (periodic analytic tasks)Interactive(user facing)Real Time(need to meet dea原创 2022-03-17 11:41:41 · 557 阅读 · 0 评论 -
计算机系统学习之(5):内存管理(2)内存管理,非连续内存的分配问题,分页操作,物理内存和虚拟内存的映射操作MMU,TLB,page fault及其解决思路,时间和空间局部性
文章目录主存 Main memory内存管理内存管理需要负责的事情物理地址空间和虚拟地址空间虚拟地址物理地址加载方式静态加载(static loading)动态加载 (dynamic loading)swapping 技术连续内存分配(continuous memory allocation)多分区分配(multiple partition allocation)固定分区分配(fixed partition allocation)First FitBest FitWorst Fit内存分配的问题碎片化 fr原创 2022-04-04 16:34:17 · 1253 阅读 · 0 评论 -
计算机网络之(2):TCP 相关知识——累积确认,三次握手,四次挥手,滑动窗口,超时重传、快速重传
文章目录TCP 概述socket 的作用和存在意义如何保证传输的可靠性累积确认机制TCP 三次握手建立连接总结三次握手四次挥手总结四次挥手TCP 连接突然终止滑动窗口机制总结滑动窗口快速重传 & 超时重传超时重传的时间设置超时重传的算法过短的超时时间过长的超时时间动态调整的超时时间问题练习TCP 概述TCP 是一个传输层协议,他的作用是为上层的应用层提供服务;传输层处于应用层和网络层之间当数据从网络层不断地运送到传输层,TCP 将这些打包好的数据(IP 数据报)进行重新解包,并拼接成字节流的原创 2022-05-02 02:58:28 · 6393 阅读 · 0 评论 -
计算机网络之(1):HTTP & Web
HTTP 无状态连接,服务器不维护客户端的状态,没有记忆协议版本(HTTP1.0/1.1),状态码(404),响应的状态信息(OK)原创 2022-06-10 13:48:18 · 116 阅读 · 0 评论