Linux
文章平均质量分 92
Linux学习记录,欢迎来访一起学习
“初生”
这个作者很懒,什么都没留下…
展开
-
高级IO(Linux)
你网购了好几个快递,张三快递员先给你派发了几个快递,你并没有去拿,因为你知道张三肯定会一直通知你,直到把你所有的快递都给你为止,因此你一直在忙别的事,直到很晚采取拿快递;又过了几天,你又网购了几个快递,不过这次给你派发快递的小哥李四不同于张三,他打电话通过你,并告知你:如果你不抓紧拿快递,那么就再也不通知你,你没有办法只能一次性将所有的快递都拿走;如果用户一次并没有把所有数据发送完,还需要再次发送;李四,一个随心所欲的钓鱼佬,在等待鱼上钩的时候,做着其他的事情,是不是地观察一个鱼竿,有没有鱼上钩;原创 2023-10-08 22:14:25 · 1050 阅读 · 38 评论 -
数据链路层
用于两个设备(同一种数据链路节点)之间进行传递。原创 2023-08-29 19:30:34 · 2158 阅读 · 91 评论 -
网络层协议
在复杂的网络环境中确定一个合适的路径。原创 2023-08-17 19:36:09 · 3013 阅读 · 122 评论 -
传输层协议
负责数据能够从发送端传输接收端。原创 2023-08-14 14:57:16 · 694 阅读 · 87 评论 -
应用层协议
加密就是把明⽂(要传输的信息)进⾏⼀系列变换, ⽣成密⽂解密就是把密⽂再进⾏⼀系列变换, 还原成明⽂HTTPS ⼯作过程中涉及到的密钥有三组第⼀组(⾮对称加密): ⽤于校验证书是否被篡改. 服务器持有私钥(私钥在形成CSR⽂件与申请证书时获得), 客⼾端持有公钥(操作系统包含了可信任的 CA 认证机构有哪些, 同时持有对应的公钥). 服务器在客⼾端请求是,返回携带签名的证书. 客⼾端通过这个公钥进⾏证书验证, 保证证书的合法性,进⼀步保证证书中携带的服务端公钥权威性。原创 2023-08-06 10:07:37 · 3120 阅读 · 115 评论 -
网络编程套接字
他们的目的就是拉客,将你拉入赌场进行消费,而当你进入赌场之后,真正为你服务的却不是那群拉客的人,而是里面的工作人员,称作李四;tcp服务端也是如此,进行监听的socket在链接成功之后,会返回一个新的socket,新生成的socket的作用才是用来通信的;服务端在未来接受客户端传来的数据时,需要知道客户端的端口和IP地址,这些数据就是保存在sockaddr_in结构中的,接受的过程这些数据是由操作系统自动进行填写;进程默认会打开0,1,2文件描述符所指向的文件,为确保服务器不受器影响,需要将其关闭;原创 2023-07-25 21:29:42 · 1308 阅读 · 61 评论 -
Linux网络基础
每一层协议的报文中都涵盖了上一层的信息;具体实现,报文到达以太网层之后,通过以太网传递给同一个网络中的以太网层,接着向上传递到另一个网络(令牌环)进行解包分用,然后重新封装;用户需要进行语言的输出,通信设备进行读取,通过自己的协议将读取到的内容传递给另一个设备,再由设备传递给另一个用户,从而达到通信的目的。当我拿到快递时,除了衣服之外,还有一个快递单,我并不需要快递单,可是为什么快递上要有它呢?举个栗子,你和好友之间提前约好在某个地方见面,这件事只有你们俩知晓,当到了约定的时间,你们俩一定会去目的地回合;原创 2023-06-24 20:19:40 · 1546 阅读 · 15 评论 -
Linux 多线程
进一步理解地址空间和页表地址空间是进程能看到的资源窗口页表决定进程真正能拥有的资源合理地对地址空间和页表进行资源划分,就可以对一个进程的所有资源分类页表的结构:页表中的每一行都是一个结构体,保存着相应的属性;再通过某种数据结构连接在一起虚拟地址空间的地址有2^32个,页表如果也是2^32个,就需要相当大的空间;因此,页表的结构并非如此虚拟地址以10,10,12个比特位分为三份;第一份作为页目录,第二份作为页表,第三分作为偏移量物理空间按照4KB的大小进行划分,通过结构体。原创 2023-05-29 19:20:28 · 1673 阅读 · 50 评论 -
进程信号(Linux)
变绿灯时,我们不一定要立刻就过马路,如果此时我们有更重要的事情要处理,我们就会选择等待下一次,变灯其实就是产生信号,选择等待下一次就是信号的处理,在信号产生和处理之间还存在着信号的保存,也就是信号需要被记住;):如果信号未决且未被阻塞,查找函数指针是否有对应的自定义处理方法,若有,将进程内核态身份修改为用户身份完成对应的处理方法,再还原为内核身份,完成剩余的系统调用,待系统调用结束后,最后将身份修改为用户态继续执行后续的代码。并不是信号一产生,进程会立刻处理信号,所以进程本身必须有保存信号的能力;原创 2023-05-12 10:54:37 · 1815 阅读 · 42 评论 -
进程间通信
共享内存的优点:在所有进程间通信中,速度是最快的,能够大大地减少拷贝次数对比:管道共享内存共享内存的缺点:对数据没有包含操作。原创 2023-05-07 21:53:38 · 692 阅读 · 5 评论 -
基础IO+文件
当我们向文件中写入时,肯定不是直接将内容写入到文件中,其中还包含着许多步骤;首先将内容拷贝到库所提供的缓冲区中fwrite(),也就是FILE中的缓冲区,紧接着文件结构体通过调用其函数指针将内容拷贝到内核缓冲区write();最后由操作系统决定按照什么样的刷新策略将内容写到文件中。原创 2023-05-03 21:24:11 · 702 阅读 · 2 评论 -
Linux常见指令
Linux常见指令原创 2023-03-17 18:20:17 · 793 阅读 · 0 评论 -
进度条(Linux)
回车,换行是两个不同的概念回车表示光标回到所在行的行首;换行表示从光标所在行直接跳到下一行,相对位置不发生变化。原创 2023-03-21 20:11:55 · 279 阅读 · 0 评论 -
Linux开发工具
linux使用工具原创 2023-03-22 17:00:30 · 514 阅读 · 2 评论 -
冯诺依曼体系
冯诺依曼体系原创 2023-03-24 21:58:32 · 426 阅读 · 0 评论 -
Linux进程
Linux进程原创 2023-03-28 18:59:58 · 435 阅读 · 0 评论 -
模拟shell
通过替换函数execp使用命令行参数命令行参数可转换为一个个指令选项->既然如此,如果能去掉前面地./execvp,那么后面的执行以及选项是不是就和命令行解释器一样按照这个思路,下面来实现模拟命令行解释器命令行解释器的模拟实现主要是依赖于替换函数,其他的细节也需要注意,此版本的解释器还有所欠缺,待补充的功能还有很多。原创 2023-04-03 09:08:37 · 318 阅读 · 0 评论 -
进程控制(Linux)
阻塞:当父进程等待获取子进程资源时,如果子进程还未退出,父进程就一直在等其退出;非阻塞:当父进程等待获取子进程资源时,如果子进程还未退出,父进程可以去执行其他其他程序,不需要一直等待子进程,采取轮询。进程退出时,会返回对应的退出码,标识进程执行的结果是否中正确;大于零,调用成功并且子进程也退出;之后的,当替换函数执行完毕后,原代码已经全部被覆盖,开始并执行新的程序代码,所以第二个。获取子进程信息的过程:子进程退出后,将退出状态,终止信息保存至PCB中;创建成功,子进程返回0,父进程返回子进程的进程id。原创 2023-04-03 18:41:42 · 430 阅读 · 0 评论