http://topic.csdn.net/u/20090604/19/B60BB1D2-EC6A-4384-B082-D58D9313A521.html
一、基础(2×10分)
1. 常见的页面调度算法有哪些?请至少列出三种。如何判断一个调度算法的好坏?
2. 网页库是搜索引擎系统的重要组成部分,它具有多方面的访问需求。如果使用关系数据库来保存网页的基本信息,包括URL、站点域名、标题、内容、修改时间、链接的所有网页,你会如何来设计数据表?请参照以下格式描述你所设计的数据表:
表名称:字段1,字段2,字段3…
Student: id, name, age…
1Answer:
http://baike.baidu.com/view/1750374.htm?func=retitle
<1> 先进先出调度算法
先进先出调度算法根据页面进入内存的时间先后选择淘汰页面,先进入内存的页面先淘汰,后进入内存的后淘汰。本算法实现时需要将页面按进入内存的时间先后组成一个队列,每次调度队首页面予以淘汰。
<2>最近最少调度算法
先进先出调度算法没有考虑页面的使用情况,大多数情况下性能不佳。根据程序执行的局部性特点,程序一旦访问了某些代码和数据,则在一段时间内会经常访问他们,因此最近最少用调度在选择淘汰页面时会考虑页面最近的使用,总是选择在最近一段时间以来最少使用的页面予以淘汰。算法实现时需要为每个页面设置数据结构记录页面自上次访问以来所经历的时间。
<3>最近最不常用调度算法
由于程序设计中经常使用循环结构,根据程序执行的局部性特点,可以设想在一段时间内经常被访问的代码和数据在将来也会经常被访问,显然这样的页面不应该被淘汰。最近最不常用调度算法总是根据一段时间内页面的访问次数来选择淘汰页面,每次淘汰访问次数最少的页面。算法实现时需要为每个页面设置计数器,记录访问次数。计数器由硬件或操作系统自动定时清零。
2Answer:
webpage (ID URL) 域名 标题 内容 修改时间 被链接到的网页id
其中可将域名单独建一表以节省空间。查找链接的所有网页时,用被链接到的网页id与该网页id匹配查找。