摘要: 要写kernel当然要知道如何用一些常用的工具检查编译出来的object file, 如何手动链接等知识啦: making a plain binary file using a C compiler(i386+).pdf 从这里,我终于搞清楚了C中的varadic function paramet 阅读全文
posted @ 2016-07-03 16:32 walkerlala 阅读(178) 评论(0) 推荐(0) 编辑
摘要: a c++ map: http://goldns.ru/cppmap-2012.png nice job. :) 阅读全文
posted @ 2016-07-02 20:48 walkerlala 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 想讲讲C++ STL中各种算法都用到的一个概念,Strict Weak Ordering。 举个例子,来说明为什么写C++要知道这个东西。 假如你定义了一个类型 MyType ,而且这个类型是可比的(comparable,定义了 < 这个operator): 现在一个 vector 里装着很多这种类 阅读全文
posted @ 2016-06-05 18:20 walkerlala 阅读(7155) 评论(5) 推荐(8) 编辑
摘要: 主要参考: https://en.wikipedia.org/wiki/Name_mangling https://en.wikipedia.org/wiki/Talk%3AName_mangling (我发现wikipedia的可读性真的很强啊,比百度百科强多了) 在编程语言中,有个术语叫 nam 阅读全文
posted @ 2016-05-15 22:20 walkerlala 阅读(377) 评论(0) 推荐(0) 编辑
摘要: 如果看一些很底层的代码(比如很多库的代码,或者内核代码),会经常见到形如 _cdecl , _stdcall (这个在Windows下的代码中很常见), _fastcall (这个比较少见)这一类的东西,到底是什么? 这些其实是用来指示编译器做函数调用的时候,应该如何调用,比如说, a)参数的传递是 阅读全文
posted @ 2016-05-15 20:40 walkerlala 阅读(192) 评论(0) 推荐(0) 编辑
摘要: Linus Torvalds在一次采访中(一次演讲后的Q&A)中被要求讲一下他最喜欢的Hack,讲着讲着,Linus就说,很多人都不懂如何使用指针,比如xxxxxxx....... 原文如下: favorite hackby vlmI asked a bunch of hard architectu 阅读全文
posted @ 2016-05-06 21:48 walkerlala 阅读(659) 评论(0) 推荐(0) 编辑
摘要: C语言中允许长度为零的数组(C99,或者gcc的c89版本之后...)(也叫flexible array member): char body[] 是标准C99的写法, char body[0] 是GCC的扩展写法。 【1】:Robert Love的回答 【2】:GCC文档 :) 阅读全文
posted @ 2016-05-06 13:54 walkerlala 阅读(364) 评论(0) 推荐(0) 编辑
摘要: ###彩蛋一##### 今天debug一个程序,发现一个很有趣的问题: float 类型不能表示 16777217这个数。 比如: 如果这样写的话,就会死循环,因为 float 型浮点数不能表示16777217这个数,所以当 i 等于 16777216的时候,往上加 1 ,还是16777216,所以 阅读全文
posted @ 2016-05-06 13:08 walkerlala 阅读(1638) 评论(0) 推荐(0) 编辑
摘要: 通过这个namespace的概念,Linux上就可以实现一个虚拟的系统了。 什么意思?使用clone()系统调用,加上一定的flag,就可以将一个进程 process_a 放在与当前namespace ns_a 不同的另一个namespace ns_b 中,这时, process_a 在 ns_b  阅读全文
posted @ 2016-05-02 14:54 walkerlala 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 在读Linux源码的时候看到一堆这种macro: 一直想不明白,为什么不直接用 或者: 搜了一下才明白: http://stackoverflow.com/questions/9495962/why-use-do-while-0-in-macro-definition http://stackove 阅读全文
posted @ 2016-05-02 11:55 walkerlala 阅读(259) 评论(0) 推荐(0) 编辑