首页
社区
课程
招聘
为什么驱动要引入lookaside这个概念?
发表于: 2015-1-17 18:48 5394

为什么驱动要引入lookaside这个概念?

2015-1-17 18:48
5394
是为了防止 内存漏洞?

如果是的话,那么应用程序为什么不引入呢?

应用程序也会内存空洞啊。

是吧?

难道就为了windows为了降低 驱动开发者的难度?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 155
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
应用程序也有lookaside的,所谓lookaside,可译为“前瞻”,其实是一类技术的统称:

The technique of searching for something in a precalculated cache before attempting a more time-consuming search elsewhere.

也就是说预先计算/分配 一些数据,在使用前先检查这个地方有没有,能不能用。

对于内存分配来说,就是实现分配管理一些内存,用的时候先看能不能从这里面取来用,不行再进行真的分配。所有这么做的技术都可以称为"look-aside"

事实上Windows Heap在VISTA以前都是使用look-aside技术管理的,后来才开始使用低整理堆(LFH),如果要深入了解Heap的lookaside和LFH可以看看微软的这篇BLOG:
http://blogs.technet.com/b/askperf/archive/2007/06/29/what-a-heap-of-part-two.aspx

关于内核的lookaside,可以看看微软MSDN的这篇:
http://msdn.microsoft.com/en-us/library/windows/hardware/ff565416(v=vs.85).aspx

或者OSR的这个讨论:
http://www.osronline.com/showthread.cfm?link=247562

如果英文不好,其实也可以看看这篇很不错的中文帖子:
http://www.mouseos.com/windows/kernel/lookaside.html

上面其实都可以通过Google搜索"lookaside“ 得到,所以,问问题之前先尝试一些搜索词,Google一下,把一些看起来不错的文章都认真看一遍,其实你能得到关于这个问题的,比看雪这个论坛上99.99%的人都了解的多得多的知识。
2015-1-18 00:53
0
雪    币: 78
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
MJ最后说的一句在理啊。事实上真正能拿来用的还是要去参考MSDN等一些官方的东西权威的东西。而不是看雪上所谓的一些技巧。
2015-1-18 01:33
0
雪    币: 7651
活跃值: (523)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
4
技巧不等于技术,技巧只能零敲碎打,而完整的技术才是构建软件的基石。就比如说,会破解软件的人,不一定会编写软件
2015-1-18 09:56
0
雪    币: 326
活跃值: (56)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
不用频繁分内存.
2015-1-21 17:32
0
雪    币: 54
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
多谢几位大神,非常感激
2015-1-27 13:50
0
游客
登录 | 注册 方可回帖
返回
//