PAGED_CODE()是Windows驱动开发
PAGED_CODE()是Windows驱动开发中的一个宏定义,其作用是将当前函数标记为在分页(paged)代码中执行。
在Windows驱动程序中,内核使用分页机制将驱动代码加载到分页池(paged pool)中,通常分为分页代码和非分页代码。分页代码位于分页池中,可以被换入和换出到磁盘上的页文件,而非分页代码位于非分页池中,常驻在内存中。由于分页代码可能会被换出到磁盘上,内核不允许在分页代码中执行一些可能导致页面错误的操作,例如访问非分页内存或执行部分的用户模式指令。
因此,当驱动程序在分页代码中执行某个函数时,使用PAGED_CODE()来标记该函数的作用是告知编译器和静态代码分析工具,这个函数只会在分页代码中被调用。这样,编译器和静态代码分析工具可以检查该函数中的代码,以确保不会有可能引发页面错误的操作。
总而言之,PAGED_CODE()的作用是编写驱动代码时的一种最佳实践,用于确保在分页代码中执行的函数不会引发页面错误,并提高驱动的可靠性和稳定性
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2023-04-17 Wi-Fi抓包
2023-04-17 SERDES
2023-04-17 #if defined(TCABC)
2020-04-17 文档外带
2020-04-17 qt release发布
2020-04-17 钢联数据
2020-04-17 nw.js