Windows机制:pagefile.sys
概述 是 Windows 操作系统中的虚拟内存页面文件,其作用、管理方式及对系统的影响是系统性能优化的核心内容 核心作用 物理内存的扩展 当物理内存(RAM)不足时,Windows 会将不活跃的数据从 RAM 转移到 pagefile.sys 中,释放 RAM 给当前活跃程序使用...
概述 是 Windows 操作系统中的虚拟内存页面文件,其作用、管理方式及对系统的影响是系统性能优化的核心内容 核心作用 物理内存的扩展 当物理内存(RAM)不足时,Windows 会将不活跃的数据从 RAM 转移到 pagefile.sys 中,释放 RAM 给当前活跃程序使用...
mmap概念 mmap是一种内存映射文件的方法,即将一个文件或者其它对象映射到进程的地址空间,实现文件磁盘地址和进程虚拟地址空间中一段虚拟地址的一一对映关系。 实现这样的映射关系后,进程就可以采用指针的方式读写操作这一段内存,而系统会自动回写脏页面到对应的文件磁盘上,即完成了对文...
otool -f print the fat headers -a print the archive header -h print the mach header -l print the load commands -L print shared libraries use...
用户模式同步 Interlocked 系列函数 原理 通过 CPU 原子指令(如 LOCK XCHG)直接操作内存,无需进入内核态 场景 简单计数器(如引用计数) 无锁数据结构(如无锁队列) 特点 性能极高(无内核切换) 仅支持单个变量的原子操作,无法实现复杂同步 临界区(Cri...
A库调用B库funcD函数,却触发了B库funcB函数的断点 简述 A库是个DLL,B库是个lib A库里面某个类继承了接口类 B类里面继承了接口类 原因 A库项目使用了B库生成的lib静态库 A库的IInterface.h少了几个函数,和B库的IInterface.h内容不一样...
创建线程 概述 每个进程至少都有一个线程。 线程的组成 线程的内核对象,操作系统用它管理线程。 系统还用内核对象来存放线程统计信息的地方。 线程栈,用于维护线程执行时所需的所有函数参数和局部变量。 进程从来不会执行任何东西,它是线程的容器。 线程必然是在某个进程的上下文中创建的,...
服务器模型 C/S模型 TCP/IP协议在设计和实现上并没有客户端和服务器的概念,在通信过程中所有机器都是对等的。 C/S模型的逻辑很简单。 服务器启动后,首先创建一个或多个监听socket,并调用bind函数将其绑定到服务器感兴趣的端口上。 然后调用listen函数等待客户连接...
安装Rosetta 2 打开一个Rosetta终端 编译相关 zlib 开始编译 编译openssl 拉代码 rosetta 需要M2下编译x86_64 配置 编译安装 安装上面所指定的路径,将会安装在当前路径下的out文件夹里面 macOS编译libcurl 创建配置 如果提示...
调试堆内存 启用用户堆栈跟踪(User Stack Trace) 方法一 通过 gflags.exe 为目标进程添加堆栈跟踪标志: 方法二: 打开Global Flags,设置如图示: 相关问题 在实践过程中,发现勾选Enable page heap之后,虽然点击上图的应用确认之...
调试实践 关于调试实践。 内存破坏 栈内存 在Windows中,栈只是操作系统为线程分配的一块内存。 作用是记录函数调用链(局部变量的分配、参数传递)。 每当调用函数时,都会创建一个栈帧并且把它压入到栈中。 随着线程中调用的函数越来越多,栈也会变得越来越大。 函数结构 函数前导指...
搜索当前分类