`
Ydoing
  • 浏览: 101051 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
概念 Virtual Address(VA):虚拟地址,实际上不存在,是对物理地址的抽象,CPU通过虚拟地址访问内存。 Physical Addrss(PA):物理地址,内存真实的地址。 Memory mangagement unit(MMU):地址转换单元,将虚拟地址转换成物理地址. 虚拟内存重要特性 1.虚拟内存存放在磁盘中,缓存在物理内存中。虚拟内存使得每个进程好像可以独占物理内存一样,这样简化了系统为进程分配内存的过程,同时各个进程都拥有的自己的内存,无不干扰。比如在32位的系统中,每个进程的拥有的虚拟内存是4G(2**32). 2.虚拟内存可以提供内存访问保护,可以在页表 ...
这个程序主要功能是显示CPU厂商的Vendor ID 源代码如下: .section .data #x是占位符 output: .ascii "The processor Vendor ID is: 'xxxxxxxxxx'\n" #_start和output都是标签 .section .text #如果用gcc编译的话,_start要改为main .global _start _start: movl $0, %eax cpuid #相当于把字符串output的地址传入到寄存器edi中. movl $output, %edi #将调用 ...
生成驱动依赖文件 depmod会生成驱动之间的依赖文件 modules.dep,保存在/lib/modules/$(uname -r)目录下。 查看已经加载驱动 lsmod ​ 查看驱动信息 modinfo 还可以从模块文件名字分析驱动信息 modinfo -F depends 查看相关字段信息 加载驱动 insmod后面加驱动的路径。 带依赖分析加载驱动 modprobe可以加驱动的驱动名,并自行分析依赖文件modules.dep加载相关的依赖驱动。 删除驱动 rmmod <script type="tex ...
最近帮一个项目编译内核,特别学习了一下,记下了过程。如果问题,可以及时联系我 编译命令 1.清理工作目标 make clean: 删除编译中间文件,但是保留配置 make mrproper:删除包括配置文件的所有构建文件 make distclean:执行mrproper所做的一切,并删除备份文件 2.配置内核 make menuconfig:文本图形方式配置内核 make oldconfig:基于当前的.config文件提示更新内核 make defconfig:生成默认的内核配置 make allmodconfig:所有的可选的选项构建成模块 make allye ...
结构体 结构体是一种特殊类型,可以打包其它类型为一种复合类型。在面向对象的概念中,就是一种特殊类。 使用结构体几种形式: 第一种 先定义结构体,然后定义结构体变量。 定义结构体: struct point1{ int x; int y; }; 定义结构体变量 struct point1 point; 第二种 定义匿名结构体,然后定义结构体变量 struct{ int x; int y; }point2; 第三种 定义结构体的同时定义结构体变量 struct point3{ i ...
每个指针都有一个值 指针是一个非负的整数值,表示存储的地址. 指针必定有个类型 这个类型指的是指针指向这个地址单元(连续的地址空间)存放的数据类型.void表示泛型,可以转换成任何类型. 用”*”可以声明一个指针变量, 也可以间接引用指针. 用(int *)p来声明p是指针, 类型为int. 通常情况下括号可以省略. 用*p解引用来获取指针p指向的值. 用&获取一个变量的地址 &只能放在在变量的前面, 即只能操作左值. 可以改变一个指针的类型,但是指针的值没有变 指针的类型和指针的值应该分开来看待. 指针和数组密切相关 数组名在特定 ...
模块函数 re.compile(pattern [, flag]) 把正则表达式预编译成正则表达式对象(模式对象),供以后使用. #模式对象,有re.compile()返回 >>> pobj = re.compile('Hello,(.*)') >>> pobj <_sre.SRE_Pattern object at 0x7fb83dc9a530> re.match(pattern, string [, flag]) 如果字符串起始处有0个或多个字符串匹配模式字符串, 返回一个相应的匹配对象.否则返回None.等同于re. ...
​##sys.exc_info() 返回 (type, value, traceback). type为异常类型, value为异常的参数(通常为异常错误的信息), traceback为跟踪回溯的对象. exc_type, exc_value, exc_traceback = sys.exc_info() print "*** print sys.exc_info:" print 'exc_type is: %s, exc_value is: %s, exc_traceback is: %s' % (exc_type, exc_value, ...
global()返回全局作用域的属性字典, locals()返回局部作用域的属性字典.当locals()在模块顶层的位置时返回的值与global()相同. 实例 #!/usr/bin/python #coding=utf-8 class Dog(object): x = 11 y = 12 def __init__(self): m = 44 n = 33 def eat(self): k = 11 h = 22 ''' 打印 {'h': 22, 'k': ...
imp.get_suffixes() 返回3元组列表(suffix, mode, type), 获得特殊模块的描述.suffix为文件后缀名;mode为打开文件模式; type为文件类型, 1代表PY_SOURCE, 2代表PY_COMPILED, 3代表C_EXTENSION >>> imp.get_suffixes() [('.x86_64-linux-gnu.so', 'rb', 3), ('.so', 'rb', 3), ('module.so', 'rb', 3), ('.py', 'U', 1), ('.pyc', 'rb', 2)] imp.fin ...
在python中, 模块即一个后缀名为”.py”文件,python用文件组织一个模块. 模块导入遵循作用域原则, 在什么作用域导入就只能在当前作用域生效. 一个模块只被加载一次,无论导入它多少次. from module import name 是把名字导入到当前的名称空间 单行导入单个模块 import json 单行导入多个模块 import os, sys, time 导入指定的模块属性 from os import path, fork, mkdir 多行导入 from Tkinter import Tk, Frame, Button, E ...
1.创建空字典 >>> dic = {} >>> type(dic) <type 'dict'> 2.直接赋值创建 >>> dic = {'spam':1, 'egg':2, 'bar':3} >>> dic {'bar': 3, 'egg': 2, 'spam': 1} 3.通过关键字dict和关键字参数创建 >>> dic = dict(spam = 1, egg = 2, bar =3) >>> dic {'bar': 3, 'egg': ...
查看日志 $ git log commit 81fe2587c1018b93d7016f69f52f532e903b780f Author: Jdoing <703627622@qq.com> Date: Mon Apr 13 21:31:47 2015 +0800 add some comment to readme.txt file commit 28647342369fc48cde70523f2fb38f4ec67f5957 Author: Jdoing <703627622@qq.com> Date: Mon Apr 13 21:19: ...
分支操作 1.查看远程分支 前面带*号的代表你当前工作目录所处的分支 $ git branch -a * br-2.1.2.2 master remotes/origin/HEAD -> origin/master remotes/origin/br-2.1.2.1 remotes/origin/br-2.1.2.2 remotes/origin/br-2.1.3 remotes/origin/master 2. 查看本地分支 $ git branch * br-2.1.2.2 master 3.创建分支 git bra ...
什么叫做序列化? 将内存中的对象转换为线性结构的字符串(有时也称字节流),以便存储或者传输.这种对象转换为字符串的行为通常叫做序列化.内存中的任意数据结构都可以映射为一个字符串. 序列化 函数签名 #pickle.dump(obj, file[, protocol]) 首先尝试将table对象序列化写入文件dbase中,写入方式是字节形式: table = {'a' : [1, 2, 3], 'b' : ['spam', 'egg'], 'c' : {'name' : 'Bob'}} with open('dbase', 'wb') as ff: pickle. ...
Global site tag (gtag.js) - Google Analytics