任务切换的方法 第一个方法就是借助中断来进行任务切换,这是现代抢占式多任务的基础。在实模式下,内存最低端1KB是中断向量表,保存着256个中断处理过程的段地址和偏移地址。在保护模式下,处理器不再使用中断向量表,而是使用中断描述符表。中段描述符表和GDT,LDT是一样的,用于保存描述符,唯一不同的地方 ...
分类:
其他好文 时间:
2020-03-30 20:07:58
阅读次数:
97
常用模块 1. 时间模块 2. random模块 3. os模块 4. sys模块 一.时间模块 在Python中,通常有这几种方式来表示时间: 1.时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time ...
分类:
其他好文 时间:
2020-03-30 20:07:15
阅读次数:
84
一、时间的三种形态 1.时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。 print(time.time()) # 显示从1970年1月1日00:00:00开始到现 ...
分类:
其他好文 时间:
2020-03-30 19:40:22
阅读次数:
65
一、time 时间分为三种格式: 1、时间戳:1970年1月1日00:00:00开始按秒计算的偏移量 作用:用于时间间隔的计算 2、按照某种格式显示的时间:2020-03-30 11:11:11 作用:用于展示时间 3、结构化的时间(struct_time) 作用:用于单独获取时间的某一部分(年,月 ...
分类:
其他好文 时间:
2020-03-30 16:36:53
阅读次数:
85
一. 字符串优化处理 1. String对象组成:char数组,offset偏移量,count长度; 2. String对象特点: 不变性:String对象一旦生成,则不能再对它进行改变; 针对常量池的优化:当两个String对象拥有相同的值时,他们只引用常量池中的同一个拷贝; 类的final定义; ...
分类:
编程语言 时间:
2020-03-28 17:54:34
阅读次数:
79
前言 区别于C/C++中的指针,Go语言中的指针不能进行偏移和运算,是安全指针。 所有Go里面的指针比较简单,只需要记住以下几点: &变量名: 获取变量的内存地址 *pointor:通过指针获取指针对应变量的值 package main import "fmt" func main() { n := ...
分类:
编程语言 时间:
2020-03-28 13:46:49
阅读次数:
81
页目录自映射中,老师一句“当然”让我想了两天,这两天又让我感受到了高中学数论时“xx的证明是平凡的”的恐惧。好不容易想明白,就用人话给自己再讲一遍吧。虽然有很多不必要的重复废话,但比“当然”要好懂多了。 1.基本假设 假设虚拟地址空间为4GB(32位逻辑地址空间),分页时每个页的大小是4KB(即地址 ...
分类:
其他好文 时间:
2020-03-26 12:20:00
阅读次数:
133
0x00 32位程序的PE结构 DOS头 nt头 = PE标识 + 文件头 + 扩展头 文件头 扩展头,文件头中的SizeOfOptionalHeader指定了扩展头的大小。 0x01 一份用c实现的代码段起始地址获取 + 读取dos头,获得nt头的偏移A + 文件头的偏移为A+sizeof(DWO ...
分类:
其他好文 时间:
2020-03-26 09:27:07
阅读次数:
82
题目链接:http://icpc.njust.edu.cn/Problem/Pku/1182/ 题意:给出动物之间的关系,有几种询问方式,问是真话还是假话。 定义三种偏移关系: x->y 偏移量0时 x和y同类 x->y 偏移量1时 x被y吃 x->y 偏移量2时 x吃y 定义 rela[x]=rx ...
分类:
其他好文 时间:
2020-03-25 01:06:48
阅读次数:
66
数据传送指令 数据交换指令 完成两个操作数间的数据交换,操作数可以是寄存器和存储单元,但是不能两个都是存储单元(与MOV指令一样,可以用寄存器作为中间媒介)。并且,段寄存器不能作为操作数。下面代码需注意VAR1的默认段是CS,而VAR1[BP]默认是SS段,如果这两个段偏移不同,则变量VAR1最终不 ...
分类:
其他好文 时间:
2020-03-24 19:16:44
阅读次数:
84