清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 515内存信息的共享与保护 内存信息的共享与保护也是内存管理的重要功能之 。在多道程序设计环境下,内存中的许多用户 或系统程序和数据段可供不同的用户进程共享。这 种资源共享将会提高内存的利用率。但是,反过来 说,除了被允许共享的部分之外,又要限制各进程 只在自己的存储区活动,各进程不能对别的进程的 程序和数据段产生干扰和破坏,因此须对内存中的 程序和数据段采取保护措施。 常用的内存信息保护方法有硬件法、软件法和软硬 件结合三种
5.1.5 内存信息的共享与保护 内存信息的共享与保护也是内存管理的重要功能之 一。 在多道程序设计环境下,内存中的许多用户 或系统程序和数据段可供不同的用户进程共享。这 种资源共享将会提高内存的利用率。但是,反过来 说,除了被允许共享的部分之外,又要限制各进程 只在自己的存储区活动,各进程不能对别的进程的 程序和数据段产生干扰和破坏,因此须对内存中的 程序和数据段采取保护措施。 常用的内存信息保护方法有硬件法、软件法和软硬 件结合三种
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 上下界保护法是一种常用的硬件保护法。上下界存 储保护技术要求为每个进程设置一对上下界寄存器 上下界寄存器中装有被保护程序和数据段的起始地 址和终止地址。在程序执行过程中在对内存进行 访问操作时首先进行访址合法性检查即检查经过 重定位后的内存地址是否在上、下界寄存器所规定 的范围之内。若在规定的范围之内,则访问是合法 的;否则是非法的,并产生访址越界中断。上下界 保护法的保护原理如图54
上下界保护法是一种常用的硬件保护法。上下界存 储保护技术要求为每个进程设置一对上下界寄存器。 上下界寄存器中装有被保护程序和数据段的起始地 址和终止地址。在程序执行过程中,在对内存进行 访问操作时首先进行访址合法性检查,即检查经过 重定位后的内存地址是否在上、下界寄存器所规定 的范围之内。若在规定的范围之内,则访问是合法 的;否则是非法的,并产生访址越界中断。上下界 保护法的保护原理如图5.4
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 上界寄存器UR 100K 100K 被保护 下界寄存器LR204程序 200K 内存 100K≤被访问地址≤200K 图54上、下界寄存器保护法
图5.4 上、下界寄存器保护法
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 另外,保护键法也是一种常用的存储保护法。保护 键法为每一个被保护存储块分配一个单独的保护键 在程序状态字中则设置相应的保护键开关字段,对 不同的进程赋予不同的开关代码和与被保护的存储 块中的保护键匹配。保护键可设置成对读写同时保 护的或只对读,写进行单项保护的。例如,图55 中的保护键0,就是对2K到4K的存储区进行读写同 时保护的,而保护键2则只对4K到6K的存储区进行 写保护。如果开关字与保护键匹配或存储块未受到 保护,则访问该存储块是允许的,否则将产生访问 出错中断
另外,保护键法也是一种常用的存储保护法。保护 键法为每一个被保护存储块分配一个单独的保护键。 在程序状态字中则设置相应的保护键开关字段,对 不同的进程赋予不同的开关代码和与被保护的存储 块中的保护键匹配。保护键可设置成对读写同时保 护的或只对读,写进行单项保护的。例如,图5.5 中的保护键0,就是对2K到4K的存储区进行读写同 时保护的,而保护键2则只对4K到6K的存储区进行 写保护。如果开关字与保护键匹配或存储块未受到 保护,则访问该存储块是允许的,否则将产生访问 出错中断
清华大学出版社 000000 TSINGHUA UNIVERSITY PRESS 当前程序状态字 2K 开关字节 ORIW 4K 正确访问 2 W 6K LOAD15000非读保护 STORE25200开关字键匹配 内存 非正确访问 LOAD12500出错,开关字键不匹配 图55保护键保护法
图5.5 保护键保护法