我是靠谱客的博主 风中楼房,最近开发中收集的这篇文章主要介绍操作系统学习笔记十三(分段),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

导图

1.分段机制的引入

  在分段存储管理的系统中,程序员使用二维的逻辑地址,一个数用来表示, 另一个数用来表示段内偏移。

  相对于分页机制,引入分段机制的主要目的是易于实现信息共享

  引入分段机制的优点:方便编程、分段共享、分段保护、动态链接,以及动态空间的增长。

  

2. 分段的概念

  进程的地址空间被划分成若干个段。

  每个段定义了一组逻辑信息,每个段的大小由相应的逻辑信息组的长度确定,的大小不一样每个段的逻辑地址从0开始,采用一段连续的地址空间

  系统为每个段分配一个连续的物理内存区域,各个不同的段可以离散地放入物理内存不同的区域。

  系统为 每个进程建立一张段表 ,段表的每一个表项纪录的信息包括 段号、段长和 该段的基址(段的起始地址) ,段表存放在内存中。
 
 

3.分页和分段的区别

   分页和分段都属于离散分配方式,都要通过数据结构与硬件的配合来实现逻辑地址到物理地址的映射

  1)页是按物理单位划分的,分页是面向系统的;段是按逻辑单位划分的,分段是面向用户的

  2)页的大小是固定的,而段的大小不固定,取决于用户编写的程序

  3)分页的地址空间是一维的,分段的地址空间是二维的。

 

4.分段的逻辑地址结构

   包括段号和段内偏移

 

 

5.段表

  段表是由操作系统维护的用于支持分段存储管理地址映射的数据结构。

  每个进程有一个段表,段表由段表项构成。每个段表项包括段号段基址(段的起始地址)和段长(段大小)3个部分。

 

6.分段系统的地址变换

 

7.段页式存储管理的基本原理

  1)将用户进程的逻辑空间先划分成若干个段每个段再划分成若干个页

  2)进程以页为单位在物理内存中离散存放,每个段中被离散存放的页具有逻辑相关性

  3)为了实现地址映射,操作系统为每个进程建立一个段表,再为每个段建立一个页表

  4)进程段表的每一个段表项存放某个段的页表起始地址和页表长度

   

8.地址变换过程

 

 

9.LINUX的伙伴系统

 

最后

以上就是风中楼房为你收集整理的操作系统学习笔记十三(分段)的全部内容,希望文章能够帮你解决操作系统学习笔记十三(分段)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(39)

评论列表共有 0 条评论

立即
投稿
返回
顶部