zoukankan      html  css  js  c++  java
  • Segmentation

    COMPUTER ORGANIZATION AND ARCHITECTURE DESIGNING FOR PERFORMANCE NINTH EDITION

    There is another way in which addressable memory can be subdivided, known as
    segmentation. Whereas paging is invisible to the programmer and serves the purpose
    of providing the programmer with a larger address space, segmentation is usually
    visible to the programmer and is provided as a convenience for organizing programs
    and data and as a means for associating privilege and protection attributes with
    instructions and data.
    Segmentation allows the programmer to view memory as consisting of mul-
    tiple address spaces or segments. Segments are of variable, indeed dynamic, size.
    Typically, the programmer or the OS will assign programs and data to different seg-
    ments. There may be a number of program segments for various types of programs as
    well as a number of data segments. Each segment may be assigned access and usage
    rights. Memory references consist of a (segment number, offset) form of address.

    This organization has a number of advantages to the programmer over a non-
    segmented address space:

    1. It simplifies the handling of growing data structures. If the programmer does
    not know ahead of time how large a particular data structure will become, it
    is not necessary to guess. The data structure can be assigned its own segment,
    and the OS will expand or shrink the segment as needed.
    2. It allows programs to be altered and recompiled independently without
    requiring that an entire set of programs be relinked and reloaded. Again, this
    is accomplished using multiple segments.
    3. It lends itself to sharing among processes. A programmer can place a utility
    program or a useful table of data in a segment that can be addressed by other
    processes.
    4. It lends itself to protection. Because a segment can be constructed to contain a
    well-defined set of programs or data, the programmer or a system administra-
    tor can assign access privileges in a convenient fashion.

    These advantages are not available with paging, which is invisible to the pro-
    grammer. On the other hand, we have seen that paging provides for an efficient
    form of memory management. To combine the advantages of both, some systems
    are equipped with the hardware and OS software to provide both.

  • 相关阅读:
    linux上的常用的进程与内存优化命令
    ubuntu 上运行的django 出现No space left on device错误
    openstack 使用pbr配置,setup.cfg的格式与含义
    openstack中安装包与组件
    对drf序列化器的理解
    对商品数据表的理解
    首页广告数据表的理解
    对省市区地址的理解
    对邮箱验证的理解
    用户中心个人信息实现的理解
  • 原文地址:https://www.cnblogs.com/rsapaper/p/6219588.html
Copyright © 2011-2022 走看看