
操作系统
光宇广贞
有志于学,虽草庐中应可知天下事!
展开
-
如何让进程退出前删除自身EXE
下面的代码由 Gary Nebbett 写就。Gary Nebbett 乃是 WINDOWS NT/2000 NATIVE API REFERENCE 的作者,NT 系统一等一的高手。下面就分析一些他的这段代码。 这段代码在PROCESS没有结束前就将启动PROCESS的EXE文件删除了。int main(int argc, char *argv[]) { H转载 2009-05-18 11:31:00 · 1343 阅读 · 4 评论 -
程序运行时三种内存分配策略
此文引述他人论述。 按照编译原理的观点,程序运行时的内存分配有三种策略,分别是静态的、栈式的、堆式的。 静态存储分配是指在编译时就能确定每个数据目标在运行时刻的存储空间需求,因而在编译时就可以给他们分配固定的内存空间。这种分配策略要求程序代码中不允许有可变数据结构(比如可变数组)的存在,也不允许有嵌套或者递归的结构出现,因为它们都会导致编译程序无法计算准确的存储空间转载 2009-05-18 11:30:00 · 1586 阅读 · 0 评论 -
Win时间函数
我们在衡量一个函数运行时间,或者判断一个算法的时间效率,或者在程序中我们需要一个定时器,定时执行一个特定的操作,比如在多媒体中,比如在游戏中等,都会用到时间函数。还比如我们通过记录函数或者算法开始和截至的时间,然后利用两者之差得出函数或者算法的运行时间。编译器和操作系统为我们提供了很多时间函数,这些时间函数的精度也是各不相同的,所以,如果我们想得到准确的结果,必须使用合适的时间函数。现在我就介绍w转载 2009-05-22 12:07:00 · 1250 阅读 · 3 评论 -
如何在C#用WM_COPYDATA消息来实现两个进程之间传递数据
http://www.cnblogs.com/cdo/archive/2005/06/08/170457.html 简介:本文着重讲述了如果用WM_COPYDATA消息来实现两个进程之间传递数据。进程之间通讯的几种方法:在Windows程序中,各个进程之间常常需要交换数据,进行数据通讯。常用的方法有1、使用内存映射文件2、通过共享内存DLL共享内存3、使用SendMessa转载 2009-05-30 22:35:00 · 3201 阅读 · 0 评论 -
资源:Windows系统的消息机制详解
此为设定博文发布时间的试验用文,内容没什么好写的,就分享一个刚上传的资源吧:资源:Windows 系统的消息机制详解原创 2009-08-11 07:36:00 · 1412 阅读 · 0 评论 -
关于内存对齐
老朋友pathuang68建议我了解一下结构体内存对齐的事儿,我就去了解了一番: 以下实验平台为 VC9。 这里先引出几条VC下结构体对齐的原则:1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除;2) 结构体每个成员相对于结构体首地址的偏移量(offset)都是成员自身大小的整数倍,如有需要编译器会在成员之间加上填充字节(internal adding);3) 结构原创 2009-06-03 15:57:00 · 3850 阅读 · 11 评论 -
Linux 下的 fork()
for( i = 0; i < 5; i++ ) if( fork() == 0 ) continue; 共生成多少个子进程?简查了一下 fork() 的知识,它调用一次,返回两次,进入子进程并返回一次,然后退到父进程再返回一次,子进程中返回值为 0,父进程中返回的是子进程的进程号。答案是 31。如上图所示,这就是一个二项树,二原创 2009-06-17 15:38:00 · 3918 阅读 · 4 评论 -
4号下午微软TECHED2012
4号下午去微软TECHED2012技术大会。上次去应该是零七年的时候吧,五年了。当时BILL GATES还在,在清华他一边咳嗽一边做了主题演讲,贩卖WEB2.0概念,听得令人昏昏欲睡,印象深刻。五年前,在操作系统市场,微软占有率九成,今仅剩三成五;IOS和ANDROID占比超45%。今次英语演讲在荧屏上配上了汉语字幕了。微软本次大会重点推荐四个赢利平台:Azure、Kinect、Windo原创 2012-12-14 09:56:01 · 2795 阅读 · 0 评论