My Blog

Thinking will not overcome fear but action will.

中断和中断处理

多任务系统

前言 中断是为了多任务操作系统实现多任务的切换,需要考虑的问题是,每个进程对应的任务描述符是什么 IO概述 为了管理不同的外设,在CPU与外设之间引入IO接口。对于某一个IO接口,通过IO接口中的寄存器和CPU进行通信,这个寄存器称之为“端口”。所以当CPU想要从端口中获取数据,或者往端口中写入数据的时候,可以通过in和out指令来执行相应的端口号,如in al, dx; in ax,...

内核同步

前言 为什么需要内核同步 共享数据 临界区域(critical regions):一个访问共享资源(例如:共享设备或是共享存储器)的程序片段,而这些共享资源又无法同时被多个线程访问的特性 竞争状态:当两个线程同时访问临界区域 同步:防止不安全的并发,避免竞争状态 举例如下,两个线程同时操作i 1. 原子指令 操作 之前,加一个lock的变量,这样每次只能有一...

内存管理2

内核中的内存管理

前言 第二部分主要是关于用户内存管理的内容。 1.进程在内存下的布局 内核空间和用户空间在内存中的布局 单个进程的地址空间布局,分段布局。 在计算机中,每个进程在内核中都有一个进程控制块(PCB)来维护进程相关的信息,Linux内核的进程控制块是task_struct结构体. 虚拟内存的结构 2.页错误的处理 页错误page fault 当出现页错误的时候,...

内存管理1

理解系统中的内存管理

前言 内存管理 是指软件运行时对计算机内存资源的分配和使用的技术。其最主要的目的是如何高效、快速的分配,并且在适当的时候释放和回收内存资源。 为什么需要内存管理? 不同的进程应该相互独立 内存的使用效率要高 虚拟内存管理的优点和缺点? 多进程共享物理内存 进程相互独立 每个进程可以使用大规模/连续的内存 更高效的内存使用 缺点:虚拟内存到物理内存需...

2020年 寻找

继续前行

他们的青春已堵住了我 他们的身影已变成了我 哦请你变老 就快点变老 然后把我找到 前言 美国大选结束,拜登赢得了选举,也展示了美国社会割裂的现状。 饶毅发文声称无法复现裴钢的学术成果,结果让人感慨。 华为步履维艰,却依旧挺立在风雨之中。 可能是因为20年的疫情让大家的生活都变得和以前不一样,而我们需要很多的时间去适应疫情下的生活。疫情让我直到五月份才去学校...

重要的网络概念

重要的网络概念 网络虚拟化 网络虚拟化是虚拟化技术在网络场景下的分支。虚拟化技术是一种资源管理(优化)技术,将物理资源予以抽象、转换,然后呈现出一种可供分割并任意组合的虚拟资源,打破了实体结构间的不可分割的障碍,使用户可以比原本的组态更好的方式来应用这些物理资源。 实现的内容包括:资源的虚拟化(抽象)、资源的调度管理、资源的隔离 网络虚拟化是指在物理网络虚拟多个相互隔离的虚拟网络,从...

p4 link monitoring 实现

P4官方教程(十一)

## 1.实验link monitoring目的 实现链路监控功能,允许主机获得其数据包传输路径上各链路的使用率。 有点像之前的显示拥塞通告实验,ECN是返回交换机内部队列长度,如果排队较长,则返回一个标识拥塞的值,但是对于终端而言,并不知道是那个交换机队列,也不知道链路利用率。 2. 实验思路 probe_fwd字段,实现源路由 probe_data存储每一个交换机添加的端...

p4 QoS 实现

P4官方教程(十)

1.实验firewall目的 本实验是为了实现简单的带状态防火墙. 无状态防火墙依赖于静态的规则匹配,可以快速的过滤某些流量,然而无法满足更为复杂的需求.比如对于TCP连接而言,一个正常的连接应当由内部的主机向外部的服务器发起,而外部的终端不应当主动和内部的主机连接.因此如何区分主被动超出了无状态防火墙的能力. note:对于一个交换机而言,其选择哪个P4程序是在其json文件的头部指定...

p4 QoS 实现

P4官方教程(九)

## 1.实验QoS目的 实现服务质量保证功能。先简单的介绍QoS相关背景,在IP网络中,对于不同的用户、流量类型应当给与不同的对待,从而实现为不同的需求提供更高的性能。 对于QoS技术而言,需提供以下的基础功能: 流量分类和标识:依据一定的规则识别对象,并标识服务级别。实现区别服务的前提 拥塞管理 拥塞避免 流量整形 对于流量而言...

p4 load_balance 实现

P4官方教程(八)

1.实验load_balance目的 基于等价多路径转发实现负载均衡,看到这个实验以及相关的材料,负载均衡在此实验中的表现是假定有两个目标主机,对于发送端而言,它可以将数据包发送给任一的接收端。大概模拟的是服务器为客户端提供服务,对于管理者而言,为了避免一个服务器的负载过大,会采用多个服务器分散压力。 2.实验思路 因为教程中写道,控制平面的流表规则已经写好,所以我想到的是查看交换机s...