01 2012 档案

摘要:Python对象初探在Python中,一切都是对象。连类型也是一种对象。在Python中,对象就是为C中的结构体在堆上申请的一块内存。一般来说,对象是不能被静态初始化的,并且也不能在栈空间上生存。唯一的例外就是类型对象,Python中所有的内建的类型对象(如整数类型对象,字符串类型对象)都是被静态初始化的。在Python中,一个对象一旦被创建,它在内存中的大小就是不变的了。这就意味着那些需要容纳可变长度数据的对象只能在对象内维护一个指向一块可变大小的内存区域的指针PyObject是整个Python对象机制的核心。typedef struct _object{PyObject_HEAD}PyOb 阅读全文
posted @ 2012-01-18 09:09 yarpee 编辑
摘要:1.Python粗猎分析python,以及webpy,边完成那个web系统,作为对python的一个总结如何从源代码编译出Python可执行程序。在整个剖析源码的过程中,最好的学习方发就是不断根据掌握的知识修改Python的源代码,以印证自己的 猜想和知识Python的运行时环境,包括对象/类型系统(Object/Type structures)、内存分配器(Memory Allocator)和运行时状态信息(Current State of Python)。运行时状态维护了解释器在执行字节码时不同的状态(比如正常状态和异常状态)之间切换的动作,可以将 它视为一个巨大而复杂的有穷状态机。内存分 阅读全文
posted @ 2012-01-17 15:25 yarpee 编辑
摘要:算是对这一两星期以来学习的一个总结http://www.docin.com/p-326378353.html当然这个只是最初版本,我希望自己持续的努力下去,在协议栈方面的成为专家。坚持自己的Linux kernel security research。尤其突出对协议栈的理解 阅读全文
posted @ 2012-01-15 22:47 yarpee 编辑
摘要:Linux网桥主要数据结构struct net_bridge_fdb_entry{struct hlist_node hlist; //用于CAM表连接的链表指针struct net_bridge_port *dst; //对应的物理接口指针,其中包含一个net_device的指针指向该物理网口struct rcu_head rcu; //RCU锁atomic_t use_count; //当前引用计数unsigned long ageing_timer; //超时时间mac_addr addr; //MAC地址 unsigned char is_local; //标明是否为本机MAC地址un 阅读全文
posted @ 2012-01-12 20:59 yarpee 编辑
摘要:网桥之cam表的操作http://blog.sina.com.cn/s/blog_52355d840100arv8.htmlhttp://blog.sina.com.cn/s/blog_52355d840100arv9.htmlhttp://blog.csdn.net/linyt/article/details/5191512http://blog.chinaunix.net/space.php?uid=24836818&do=blog&id=2562048http://blog.chinaunix.net/space.php?uid=20543183&do=blog& 阅读全文
posted @ 2012-01-12 15:25 yarpee 编辑
摘要:a、Q&AQ:为什么编出来的应用肯定是在用户地址空间运行,而内核编出来的代码却一定是运行在内核空间?A:链接器(Linker):目的是描述输入文件的sections是如何映射到输出文件中,并控制输出文件的内存排列。而且ld就是使用这个缺省的script内置在链接器中。b、链接脚本具体实践链接脚本中无论是输出文件还是输入文件,主要数据是文件中的各种段,把输入文件中的段称为输入段(Input Sections),输出文件中的段称为 输出段(Output Sections)。一般链接脚本名都以lds作为扩展名,ld scriptld script语法:1.语句之间使用分号";&qu 阅读全文
posted @ 2012-01-04 21:47 yarpee 编辑