摘要:
├—WINDOWS│ ├—system32(存放Windows的系统文件和硬件驱动程序)│ │ ├—config(用户配置信息和密码信息)│ │ │ └—systemprofile(系统配置信息,用于恢复系统)│ │ ├—drivers(用来存放硬件驱动文件,不建议删除)│ │ ├—spool(用来存放系统打印文件。包括打印的色彩、打印预存等)│ │ ├—wbem(存放WMI测试程序,用于查看和更改公共信息模型类、实例和方法等。请勿删除)│ │ ├—IME(用来存放系统输入法文件,类似WINDOWS下的IME文件夹)│ │ ├—CatRoot(计算机启动测试信息目录,包括了计算机启动时检测的硬 阅读全文
摘要:
http://blog.csdn.net/walkingman321/article/details/6162055timerfd是Linux为用户程序提供的一个定时器接口。这个接口基于文件描述符,所以能够被用于select/poll的应用场景。1.使用方法timerfd提供了如下接口供用户使用timerfd_createint timerfd_create(int clockid, int flags);timerfd_create用于创建一个定时器文件。参数clockid可以是CLOCK_MONOTONIC或者CLOCK_REALTIME。参数flags可以是0或者O_CLOEXEC/O_ 阅读全文
摘要:
动态绑定在C++中,通过基类的引用/指针调用虚函数时,发生动态绑定。基类的引用或指针既可以指向基类的对象也可以指向派生类的对象,这一事实是动态绑定的关键。用引用或指针调用的虚函数在运行时确定,被调用的函数是引用或指针当前所指对象的实际类型所定义的。访问控制public和private标号用户代码可以访问类的public成员而不能访问private成员,private成员只能由基类的成员和友元访问。protected。protected成员可以被派生类对象访问但不能被该类型的普通用户访问。定义派生类。为了定义派生类,使用“类派生列表”指定基类。如下形式class classname: acces 阅读全文
摘要:
http://blog.chinaunix.net/space.php?uid=576762&do=blog&cuid=316503我们知道在C++的创建对象是一个费时,费空间的一个操作。有些固然是必不可少,但还有一些对象却在我们不知道的情况下被创建了。通常以下三种情况会产生临时对象: 1,以值的方式给函数传参; 2,类型转换; 3,函数需要返回一个对象时;现在我们依次看这三种情况:一,以值的方式给函数传参。 我们知道给函数传参有两种方式。1,按值传递;2,按引用传递。按值传递时,首先将需要传给函数的参数,调用拷贝构造函数创建一个副本,所有在函数里的操作都是针对这个副本的,也正 阅读全文
摘要:
作者:星轨(oRbIt) E_Mail:inte2000@163.com 转载请注明原作者,否则请勿转载 使用C/C++语言开发软件的程序员经常碰到这样的问题:有时候是程序编译没有问题,但是链接的时候总是报告函数不存在(经典的LNK 2001错误),有时候是程序编译和链接都没有错误,但是只要调用库中的函数就会出现堆栈异常。这些现象通常是出现在C和C++的代码混合使用的情况下或在C++程序中使用第三方的库的情况下(不是用C++语言开发的),其实这都是函数调用约定(Calling Convention)和函数名修饰(Decorated Name)规则惹的祸。函数调用方式决定了函数参数入栈的顺序.. 阅读全文
摘要:
http://www.cppblog.com/suiaiguo/archive/2009/07/16/90228.html隐式类型转换&& 负数的补码偶然看到一道C++面试题:voidfoo(void){unsignedinta=6;intb=-20;(a+b>6)?puts(">6"):puts("<=6");//puts为打印函数}问输出是什么?答案是输出 >6。这道题主要考察两个东西。1.隐式类型转换:int型变量转化成unsigned int, b成了正数.2.负数的补码:计算机系统中的数值是以补码形式表示 阅读全文
摘要:
最近的模块中要用到 openat .其它原型为:(int dfd, const char __user *filename, int flags, int mode);第一个参数 是,dfd,找了许久都没找到怎样获得目录文件描述符,还是在google code search 中发现。int dirfd(DIR *dir);dirfd - get directory stream file descriptor.还是很怀念windows。MSDN组织的很好。 阅读全文
摘要:
LinuxSecurityModule的注册层次===================================================作者:ietf AT doit.com.cn所有源文件来自于linux kernel 2.6.20请在GNU Library General Public License下参考。引用请注明出处。===================================================selinux的出现着实扰乱了文件系统的进度,不过送算慢慢搞清楚了其中的来龙去脉。下面将通过2.6.20内核中的security代码进行一番简单的分析。该 阅读全文
摘要:
http://space.doit.com.cn/45811/viewspace-2096.htmlSecurity-EnhancedLinux(SELinux),这在linux2.6的内核中,是你不得不关注的对象。无论是文件系统还是网络接口,到处都能不经意的瞥到它幽灵般的身影。其钩子的实现方式严重的影响着对内核的正常阅读,为此,很有必要把这个幽灵就出来使之大白于天下。本篇文章内容系东拼西凑,绝非原创,特此声明。一、什么是selinux美国国家安全局(NationalSecurityAgency,NSA)长时间以来就关注大部分操作系统中受限的安全能力。毕竟,他们的工作之一就是要确保美国国防部使 阅读全文
摘要:
转载,原文出处:http://blog.chinaunix.net/u/548/showart.php?id=386423关于截获execve等系统调用,很久以来存在一个问题:新函数不能直接调旧函数,否则导致stack不平衡,出错。曾经有高人用一串的汇编代码去平衡堆栈, 但对于偶们这些汇编菜鸟来说, 连阅读都很困难。而且, 好像gcc4.x下不支持 它使用的一种寻址方式了。这次使用kprobes来直接找do_execve,直接照搬sys_execve的实现代码。至于LICENSE的问题,谁用谁负责,我只是从技术角度上说可以这样做。(我的代码是GPL的)只截获了open和execve作为示例,其 阅读全文