操作系统课程设计

操作系统课程设计论文

一.任务:

编程演示三种存储管理方式的地址换算过程,分别是:分页式地址换算,分段式地址换算和段页式地址换算。 二.思想:

为了能将用户地址空间中的逻辑地址变换为内存空间中的物理地址,在系统中必须设置地址变换机构。该机构的基本任务是实现从逻辑地址到物理地址的转换。

由于页内地址和物理地址是一一对应的,因此,地址变换机构的任务实际上只是将逻辑地址中的页号,转换内存中的物理块号。又因为页面映射表的作用就是用于实现从页号到物理块号的变换,因此,分页式地址 变换任务是借助于页表来完成的。

在分段式存储管理系统中,为每个分段分派一个连续的分区,而进程中的各个段可以离散地移入内存中不同的分区中。为使程序能正常运行,亦即,能从物理内存中找出每个逻辑段所对应的位置,在系统中为每个进程建立一张“段表”。每个段在表中占有一个表项,其中记录了该段在内存中的起始地址和段的长度。

分页和分段存储管理方式都各有优缺点。分页系统能有效地提高内存利用率,而分段系统则能很好地满足用户需要。如果能对两种存储管理方式“各取所长”,则可将两者结合成一种新的存储管理方式系统。这种新系统既具有分段系统的便于实现,分段可共享,易于保护,可动态链接等一系列优点,又能像分页系统那样很好地解决内存的外部碎片问题,以及可为各个分段离散地分配内存等问题。把这种结合起来形成的新系统称为“段页式系统”。 三.目的:

每种地址换算过程的目的都是把用户地址空间中的逻辑地址变换为内存空间中的物理地址。 四.方案: 分页式:

当进程要访问某个逻辑地址中的数据时,分页地址变换机构会自动地将有效地址的页号和页内地址两部分,再以页号为索引去检索页表。查找操作由硬件执行,在执行检索之前,先将页号与页表长度进行比较,如果页号大于或等于页表长度,则表示本次所访问的地址已超越进程的地址空间。于是,这一错误将被系统发现并产生一地址越界中断。若未出现越界错误,则将页表始址与页号和页表项长度的乘积相加,便得到该表项在页表中的位置,于是可从中得到该页的物理块号,将之装入物理地址寄存器中。与此同时,再将有效地址寄存器中的页内地址送入物理地址寄存器的块内地址字段中。这样变完成了从逻辑地址到物理地址的变换。 分段式:

为了实现从进程的逻辑地址到物理地址的变换功能,在系统中设置了段表寄存器,用来存放段表始址和段表长度TL。在进行地址变换时,系统将逻辑地址中的段号与段表长度TL进行比较。若S>TL,表示段号太大,是访问越界,于是产生越界中断信号;若未越界,则根据段表的始址和该段的段号,计算出该段对应段表项的位置,从中读出该段在内存中的起始地址,然后,再检查段内地址d是否超过该段的段长SL。若超过,即d>SL,同样发出越界中断信号;若未越界,则将该段的基址与段内地址d相加,即可得到要访问的内存物理地址。 段页式:

在段页式系统中,为了便于实现地址变换,须配置一个段表寄存器,其中存放段表始址和段表长TL。进行地址变换时,首先利用段号S,将它与段表长TL进行比较。若

你可能喜欢

  • 存储过程
  • 操作系统银行家算法课程设计
  • 消费系统
  • 系统设计
  • 动手操作
  • 计算机操作系统课程设计
  • 操作系统课程设计模拟操作系统
  • 操作系统课程设计文件系统

操作系统课程设计相关文档

最新文档

返回顶部