
windowsAPI
gogiqp_jyh
IT技术分享博客,http://blog.127n.com
展开
-
操作系统中PV操作
操作系统的进程管理中,PV是重点和难点。信号量:信号量是个数据结构。struct semaphore{int value;pcb *blockqueue;}mutex;其中value是信号量的值;blockqueue是等待使用该信号量的进程排成的队列的对手指针。p操作:当一个进程对信号量mutex执行p操作时,执行两个动作:mutex.valu–; //申请一个资源if (mutex原创 2013-12-16 19:54:51 · 1064 阅读 · 0 评论 -
iphlpapi.h GetifTable()
windows的平台sdk中有一个很重要的iphlpapi.h头文件,它提供了一些非常实用的获取网络信息(网卡、tcp/ip等)的函数: 里面主要的函数主要有: GetNumberOfInterfaces()获取当前的网络接口数目:注意不是网卡数目,这个相当于你的查看网络连接里面的连接数目+1(本地回路) GetIfTable()得到所有网络接口的信息(包括网卡信息、收到发出数据量、连接类型原创 2013-12-16 19:54:17 · 1344 阅读 · 0 评论 -
CMD命令中空格的解决办法(转载)
有的时候产品容易被默认安装到c:\Program Files\这样包含空格的路径下,那么在命令行中输入一个带空格的file path作为参数往往会出错。所以大家都流传着这样一种说法:咱们公司的产品安装的时候选择的目录千万不要包含空格。但是,一个那么大的产品装好了,使用命令行配置的时候发现path带空格命令过不去,而卸载重装太恐怖了,怎么办?现在有两个办法来解决这个问题1)用缩写。比如c:\Prog原创 2013-12-16 19:56:33 · 5375 阅读 · 0 评论 -
DOS命令查看占用指定端口的应用程序
netstat -ano|find “:80”,将其中80改成需要查看的端口号 查询结果共5列,依次是Protocol(规约,TCP、UDP等)、Local Address——本地IP和端口号(如127.0.0.1:80)、Foreign Address(不知道怎么翻译,外部地址?)、State(状态,如LISTENING)和进程ID。 而tasklist|find "1664"——将166原创 2013-12-16 19:54:26 · 552 阅读 · 0 评论 -
互斥量和信号量的区别
1. 互斥量用于线程的互斥,信号量用于线程的同步。 这是互斥量和信号量的根本区别,也就是互斥和同步之间的区别。 互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。 同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定原创 2013-12-16 19:54:49 · 543 阅读 · 0 评论 -
Windows内存管理(转发)
最近我在准备一个关于Windows内存管理的演讲。其中的一个议题是堆(Heap)。众所周知,C++中的new操作符会调用到C中的malloc函数的,而malloc函数是依赖于KERNEL32.DLL中的HeapAlloc(…)。 为了演示这3个函数的关系,我写了一个简单的程序。在这个程序会分别调用new和malloc。我在KERNEL32!HeapAlloc上设置了断点。在程序运行起来后,我期原创 2013-12-16 19:55:02 · 499 阅读 · 0 评论