摘要: Windows NT 中的服务器进程被称作子系统。模块化和结构化的程序设计都是优秀软件管理的原则,NT 选择使用客户机-服务器的体系结构显示了它对这种原则的服从。Windows NT 本可以将所需的 APIs 在内核实现,也可以在内核上加上不同的层来实现不同的 APIs。出于维护性和扩展性的目的,N 阅读全文
posted @ 2017-01-17 00:51 debugme 阅读(580) 评论(0) 推荐(0) 编辑
摘要: 对象管理器使用对象头中保存的数据来管理这些对象,而无需关注它们的类型,标准对象头中的属性 1.对象名称:使一个对象对于其他的进程也是可见的,便于共享 2.对象目录:提供了一个层次结构来存储对象名称 3.安全描述符:决定了谁可以使用该对象,以及允许它们如何使用它 4.配额花费:列出当一个进程打开一个指 阅读全文
posted @ 2017-01-10 00:53 debugme 阅读(777) 评论(0) 推荐(0) 编辑
摘要: 中断和异常时导致处理器转向正常控制流之外代码的两种操作系统条件。硬件或者软件都可以检测到这两种条件。陷阱trap指的是,当异常或者中断发生时,处理器捕捉到一个执行线程,并且将控制权转移到操作系统中某一固定地址处。Windows中,处理器将控制权转给一个陷阱处理器。陷阱处理器指的是与某个特殊的中断或者 阅读全文
posted @ 2017-01-03 17:31 debugme 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 四种用户模式进程:1.系统支持进程,比如登录进程和会话管理器,并不是Windows服务,不有服务控制管理器启动2.服务进程,一些以Windows服务方式来运行的组件3.用户应用进程4.环境子系统服务器进程,实现了操作系统环境的支持部分,这里的环境是指操作系统展示给用户 或者程序员的个性化部分,三个子 阅读全文
posted @ 2016-12-31 21:46 debugme 阅读(1320) 评论(0) 推荐(0) 编辑
摘要: windows API:被文档化的可以调用的子例程,如CreateProcess 原生的系统服务(执行体系统服务):未被文档化的、可以再用户模式下调用的底层服务,如NtCreateProcess 内核支持函数:位于操作系统内核只能在内核模式下调用的函数,如ExAllocatePool windows 阅读全文
posted @ 2016-12-31 21:45 debugme 阅读(886) 评论(0) 推荐(0) 编辑
摘要: #include <ntddk.h> void DriverUnload(IN PDRIVER_OBJECT DriverObject);NTSTATUS MyCreateClose(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp);NTSTATUS MyDe 阅读全文
posted @ 2016-12-11 16:42 debugme 阅读(341) 评论(0) 推荐(0) 编辑
摘要: #include <iostream> using namespace std; class CObject{public: virtual void Serialize(){cout<<"CObject::Serialize()\n\n";}}; class CDocument:public CO 阅读全文
posted @ 2016-02-28 18:08 debugme 阅读(785) 评论(0) 推荐(0) 编辑
摘要: 1.如果期望派生类重新定义一个成员函数,那么应该在基类中把此函数设为virtual 2.以单一指令调用不同函数,这种性质称为多态 3.虚函数是C++语言的多态性质和动态绑定的关键 4.既然抽象类中的虚函数不打算被调用,我们就不应该定义它,应该把它定义为纯虚函数(在函数声明之后加上“=0”即可) 5. 阅读全文
posted @ 2016-02-28 16:12 debugme 阅读(200) 评论(0) 推荐(0) 编辑
摘要: class CShape { private: int m_color; public: void setcolor(int color){ m_color = color;} } class CRect:public CShape { void display(){...} } CRect rec 阅读全文
posted @ 2016-02-28 15:13 debugme 阅读(184) 评论(0) 推荐(0) 编辑