
操作系统学习之路
文章平均质量分 90
滴水梵音
程序人生
展开
-
进程的虚拟地址空间
进程的虚拟地址空间昨晚看到了深夜,终于对进程的虚拟地址空间有了个大致的了解,很激动,也很欣慰。回头想来,一个程序员,真的应该知道这些知识,否则还真不太称职。首先告诉大家,我后面提到的这些知识在《windows核心编程》中都有,强烈建议大家把这本书翻翻,我相信会对你的编程境界拔高好几个层次的。可是我最近没那么多时间,因此就只能了解个大概,然后等今后闲暇时再看这本书吧。昨天我媳妇还反复和我转载 2013-02-18 09:59:55 · 468 阅读 · 0 评论 -
字符,字节和编码
字符,字节和编码目录(?)[+]字符,字节和编码[原创文章,转载请保留或注明出处:http://www.regexlab.com/zh/encoding.htm]级别:中级摘要:本文介绍了字符与编码的发展过程,相关概念的正确理解。举例说明了一些实际应用中,编码的实现方法。然后,本文讲述了通常对字符与编码的几种误解,由于这些转载 2015-06-09 15:46:43 · 410 阅读 · 0 评论 -
SafeSEH 对异常处理的保护原理
SafeSEH 对异常处理的保护原理在 Windows XP sp2 以及之后的版本中,微软引入了 S.E.H 校验机制 SafeSEH。SafeSEH 需要 OS 和 Compiler 的双重支持,二者缺一都会降低保护能力。通过启用 /SafeSEH 链接选项可心使编译好的程序具备 SafeSEH 功能(VS2003 及后续版本默认启用)。该选项会将所有异常处理函数地址提取出来,编入 S转载 2015-05-14 11:40:33 · 1530 阅读 · 0 评论 -
进程可寻址空间限制与解决方案
进程可寻址空间限制与解决方案如何在32位程序中突破地址空间限制使用超过4G的内存 众所周知,所有的32位应用程序都有4GB的进程地址空间,因为32位地址最多可以映射4GB的内存(对于虚拟地址空间概念不太熟悉的朋友建议去看一下《Windows核心编程》这本书)。对于Microsoft Windows操作系统,应用程序可以访问2GB的进程地址空间(32位Li转载 2014-11-07 11:24:24 · 1346 阅读 · 0 评论 -
32位&64位版本Windows下运行win32程序扩展用户模式虚拟地址~
/3GB/3GB在 32 位版本的 Windows 上,/3GB 参数启用 4 GT RAM 调节,该功能将用户模式虚拟地址空间放大到 3 GB 并将内核模式组建限制在剩余的 1 GB。 /3GB [ /userva=SizeInMB ] 子参数/userva为使用 /3GB 参数启转载 2014-10-21 17:31:58 · 1523 阅读 · 0 评论 -
How to determine CPU and memory consumption from inside a process
Total virtual memory availableVirtual memory currently usedVirtual memory currently used by my processTotal RAM availableRAM currently usedRAM currently used by my process% CPU currently used%转载 2014-11-10 13:50:45 · 717 阅读 · 0 评论 -
关于 SetProcessWorkingSetSize 和内存释放
关于 SetProcessWorkingSetSize 和内存释放在应用程序中,往往为了释放内存等,使用一些函数,其实,对于内存操作函数要谨慎使用,比如大家常常想到的 SetProcessWorkingSetSize,其实对于windows来说,系统会自动在程序闲置时(如程序被最小化)释放内存的,自己用内存释放 时,往往会造成一些莫名的内存错误,造成自己的应用程序及系统不稳定。转载 2014-10-23 11:05:11 · 524 阅读 · 0 评论 -
Windows异常处理流程
Windows异常处理流程 SoBeIt 先来说说异常和中断的区别。中断可在任何时候发生,与CPU正在执行什么指令无关,中断主要由I/O设备、处理器时钟或定时器等硬件引发,可以被允许或取消。而异常是由于CP转载 2014-07-15 14:59:57 · 543 阅读 · 0 评论 -
虚拟地址空间
虚拟地址空间14(共 14)对本文的评价是有帮助- 评价此主题当处理器读或写入内存位置时,它会使用虚拟地址。作为读或写操作的一部分,处理器将虚拟地址转换为物理地址。通过虚拟地址访问内存有以下优势:程序可以使用一系列相邻的虚拟地址来访问物理内存中不相邻的大内存缓冲区。程序可以使用一系列虚拟地址来访问大于可用物理内存的内存缓冲区。当物理内存的供应量变小时,内转载 2014-07-10 10:36:59 · 579 阅读 · 0 评论 -
windows程序设计 win32 API 获取系统内存信息 GlobalMemoryStatus 和 GlobalMemoryStatusEx
1、获取系统内存信息有2个api,分别是GlobalMemoryStatus和GlobalMemoryStatusExGlobalMemoryStatus函数可以在C语言咧直接调用,但是GlobalMemoryStatusEx却不可以直接调用2、看看这2个函数的不同,总的来说这2个函数都可以获取到内存信息,但是GlobalMemoryStatusEx函数是GlobalMemoryStatu转载 2014-07-22 13:30:06 · 1591 阅读 · 0 评论 -
深入探索Win32结构化异常处理
深入探索Win32结构化异常处理原文:http://blog.youkuaiyun.com/diamont/article/details/4259590Matt Pietrek 著董岩 译在Win32操作系统提供的所有功能中,使用最广泛而又没有公开的恐怕要数结构化异常处理( Structured Exception Handling ,SEH ) 了。当你考虑Wi转载 2013-08-13 17:43:35 · 670 阅读 · 0 评论 -
用MapViewOfFile处理大文件-内存不足
用MapViewOfFile处理大文件-内存不足用MapViewOfFile处理大文件时,如果文件过大,如400M,则无法一次性映射入内存,否则会出现1132错误,即内存不足。原因可能为操作系统无法找到连续的内存。因此需要通过分页的方式,逐页将文件内容映射到内存。相关资料:LPVOID MapViewOfFile(HANDLE hFileMappingObject, DW转载 2013-02-18 10:05:10 · 4635 阅读 · 0 评论 -
精确获取时间(QueryPerformanceCounter)
精确获取时间(QueryPerformanceCounter)LARGE_INTEGER tima,timb; QueryPerformanceCounter(&tima);在 Windows Server 2003 和 WindowsXP 中使用 QueryPerformanceCounter 函数的程序可能执行不当QueryPerformanceCounter转载 2013-02-18 15:50:29 · 314 阅读 · 0 评论 -
虚拟内存、物理内存、页面文件和任务管理器介绍
虚拟内存、物理内存、页面文件和任务管理器介绍: 虚拟内存(Virtual Memory)是Windows管理所有可用内存的方式。: 对于32位Windows系统,每个进程所用到的虚拟内存地址从0到2^32-1,总容量4GB,: 其中2GB是与操作系统以及其他所有进程所共享,: 另外2GB分派给进程独占(这就是常说的32位Windows中一个进程最多能用2G内存的由来)。转载 2013-02-18 10:01:28 · 762 阅读 · 0 评论 -
中文化和国际化问题权威解析
http://blog.youkuaiyun.com/sfdev/archive/2009/01/13/3770706.aspxhttp://blog.youkuaiyun.com/sfdev/archive/2009/01/13/3771134.aspxhttp://blog.youkuaiyun.com/sfdev/archive/2009/01/13/3771441.aspxhttp://blog.youkuaiyun.com转载 2015-06-09 15:51:22 · 485 阅读 · 0 评论