操作系统
Beyond_cn
这个作者很懒,什么都没留下…
展开
-
进程间通讯方法总结
进程间通讯方法总结进程通常被定义为一个正在运行的程序的实例,它由两个部分组成: 一个是操作系统用来管理进程的内核对象。内核对象也是系统用来存放关于进程的统计信息的地方 另一个是地址空间,它包含所有的可执行模块或DLL模块的代码和数据。它还包含动态分配的空间。如线程堆栈和堆分配空间。每个进程被赋予它自己的虚拟地址空间,当进程中的一个线程正在运行时,该线程可以访问只属于它的进程的内存。转载 2013-08-17 22:40:11 · 997 阅读 · 0 评论 -
WaitForMultipleObjects使用详解
[c-sharp] view plaincopyDWORD WaitForMultipleObjects( DWORD nCount, // number of handles in the handle array CONST HANDLE *lpHandles, // pointer to the object-ha转载 2015-06-06 15:54:54 · 1070 阅读 · 0 评论 -
directory identifiers (dirids)
Many of the directories that appear in INF files can be expressed by using directory identifiers (dirids), which are numbers that identify specific directories. Applications can use, but cannot reassi转载 2015-06-06 14:07:31 · 715 阅读 · 0 评论 -
在VC下执行DOS命令
[cpp] view plaincopy/* ================================================================================================ 方法一: system("md c://12"); 1) 调用命令时会出现一个dos 窗口一闪而过转载 2015-06-06 16:18:17 · 1560 阅读 · 0 评论 -
XP设置远程桌面24位色深
XP/2003远程桌面默认只支持16位色,可以用下面提高到24位,32位就不用考虑,它就是不支持。修改远程桌面颜色----gpedit.msc----管理模版---windows组件---终端服务=>限制最大颜色深度转自:http://blog.csdn.net/lophyxp/article/details/8945100转载 2015-06-06 15:05:32 · 2605 阅读 · 0 评论 -
理解VMware的三种网络模型
近来学习数据库,听从老大号召装上了 VMware。由于我比较爱折腾,一不小心改了一下 VMware 的虚拟网络设置,导致无法上网。网上谷歌了一下,同时参考了厚朴上面的几篇教程,有点心得,与大家分享一下。 先说一下 VMware 的几个虚拟设备: ◇ VMnet0:这是 VMware 用于虚拟桥接网络下的虚拟交换机; ◇ VMnet1:这是 VMware 用于虚拟 Hos转载 2014-12-15 19:02:46 · 885 阅读 · 0 评论 -
WINDOWS内核对象
一.前言Windows中有很多像进程对象、线程对象、文件对象等等这样的对象,我们称之为Windows内核对象。内核对象是系统地址空间中的一个内存块,由系统创建并维护。内核对象为内核所拥有,而不为进程所拥有,所以不同进程可以访问同一个内核对象。二.内核对象结构每个对象都有对象头和对象体组成。所有类型的对象头结构都是相同的,而结构体部分却各不相同的。下面是内核对象的结构图:转载 2014-03-02 21:39:18 · 760 阅读 · 0 评论 -
使用PostThreadMessage向工作线程发送消息
把window线程间传送消息仔细的看了一遍,觉得以前的理解很不深刻。说一说对PostThreadMessage的理解。 PostThreadMessage是一个线程体发送一个消息到指定的线程ID,其原型如下: BOOL PostThreadMessage( DWORD idThread,转载 2014-03-02 20:46:05 · 1603 阅读 · 0 评论 -
Windows内核对象简介
内核对象只是操作系统内核分配的一个内存块,并且只能由操作系统内核访问。该内存块是一种数据结构,它的成员负责维护该对象的各种信息。Windows提供一组函数创建和操作内核对象。调用一个创建内核对象的函数,函数会返回一个句柄,该句柄标识了这个内核对象,这个句柄可由当前进程中的所有线程调用。也可以通过跨进程边界共享内核对象,让其他的进程调用。 使用计数。内核对象有个使用计数数据成员,标识转载 2014-03-02 21:38:15 · 775 阅读 · 0 评论 -
一层交换机,二层交换机,三层交换机
简单地说:一层交换机 只支持物理层协议(电话程控交换机可以算一个???)二层交换机 支持物理层和数据链路层协议,如以太网交换机三层交换机 支持物理层,数据链路层及网络层协议,如某些带路由功能的交换机从ISO/OSI的分层结构上说,交换机可分为二层交换机、三层交换机等。二层交换机指的就是传统的工作在OSI参考模型的第二层--数据链路层上交换机,主要功能包括物理编址、错误转载 2014-03-02 21:31:24 · 1330 阅读 · 0 评论 -
COM组件简介
面向对象的思想难以适应这种分布式软件模型,于是组件化程序设计思想得到了迅速的发展。按照组件化的程序设计的思想,复杂的应用程序被设计成一些小的,功能单一的组件模块,这些组件模块可以运行在同一台机器上,也可以运行在不同的机器上。为了实现这样的应用软件,组建程序和组建程序之间需要一些极为细致的规范, 只有组件程序遵守了这些共同的规范,然间系统才能正常运行。为此,OMG和Micro转载 2014-03-02 21:18:24 · 929 阅读 · 0 评论 -
windows下绑定线程(进程)到指定的CPU核心
一个程序指定到单独一个CPU上运行会比不指定CPU运行时快。这中间主要有两个原因:1)CPU切换时损耗的性能。2)Intel的自动降频技术和windows的机制冲突:windows有一个功能是平衡负载,可以将一个线程在不同时间分配到不同CPU,从而使得每一个CPU不“过累”。然而,Inter又有一个技术叫做SpeedStep,当一个CPU没有满负荷运行时自动降频从而达到节能减排的目的。这两转载 2013-11-13 15:15:54 · 19683 阅读 · 1 评论 -
利用#pragma data_seg在进程间共享变量
#pragma data_seg介绍用#pragma data_seg建立一个新的数据段并定义共享数据,其具体格式为: #pragma data_seg ("shareddata") HWND sharedwnd=NULL;//共享数据 #pragma data_seg()--------------------------------------------转载 2013-08-17 22:51:59 · 1031 阅读 · 0 评论 -
一个函数能否被两个线程同时调用
其实你可以这样想,函数本身只是代码,代码是只读的,无论多少个线程同时调都无所谓(因为只读嘛)。但是函数里面总要用到数据,如果数据属于线程(比如函数参数、局部变量,存在栈上,每个线程都有自己的栈),那么同时调还是没关系,因为用的本线程的数据;但是如果用了一些全局数据,比如全局变量,同时操作一个数据结构(如对一个链表有什么操作),那就不行了,这时候锁就出来了。转自:http://bbs.china转载 2015-06-06 16:14:24 · 8583 阅读 · 0 评论