当前位置: 首页 > news >正文

公司网站建设要求360优化大师安卓手机版下载安装

公司网站建设要求,360优化大师安卓手机版下载安装,logo素材网站有哪些,网站后台添加目录 4.2.1 程序的装入 一、绝对装入方式 二 、可重定位装入方式 三、动态运行时装入方式 4.2.2 程序的链接 一、静态链接 二、装入时动态链接 三、运行时动态链接 在多道程序环境下,如果程序要运行,那么必须为之创建进程。而创建进程的第一件…

目录

4.2.1  程序的装入

一、绝对装入方式

二 、可重定位装入方式

三、动态运行时装入方式

4.2.2  程序的链接

一、静态链接

二、装入时动态链接

三、运行时动态链接


在多道程序环境下,如果程序要运行,那么必须为之创建进程。而创建进程的第一件事就是要把用户编写好的源程序和数据装入内存。如何将一个用户的源程序变成一个可在内存中执行的程序,通常要经过下列几步:

1、编译

源程序是用高级语言或汇编语言编写的一组程序语句。计算机不能直接执行源程序,它需要被编译程序或解释程序翻译成机器级代码,即目标模块。

2、链接

目标模块是纯二进制的机器级代码。虽然计算机可以执行目标级代码,但是典型的目标模块是不完备的,它还需要包含对其它目标模块或库函数的引用。因此,目标模块通常是不能被装入计算机并执行的,需要首先被链接成一个装入模块。

装入模块是能被装入并执行的完备的机器级代码。这个将目标模块链接成装入模块的过程,是由链接程序(Linker)实现的。

3、装入

装入是指由装入程序将装入模块装入内存并执行。

4.2.1  程序的装入

根据存储空间的分配方式,将一个装入模块装入内存时,可采用三种方式:

一、绝对装入方式

装入程序按照装入模块中的地址,将程序和数据装入内存。装入模块被装入内存后,由于程序中的逻辑地址与实际内存地址完全相同,因此不需要对程序和数据的地址进行修改。

通常在程序中采用符号地址,然后在编译或汇编时,再将这些符号地址转换为绝对地址。

二 、可重定位装入方式

  • 目标模块中的地址为相对地址,即地址都是相对于0开始的。
  • 装入模块中的逻辑地址与实际装入内存的物理地址不同。

重定位:在装入内存时,对相对地址做出相应的修改以得到正确的物理地址。

相对地址是指数据地址和指令地址。

根据地址变换进行的时间及采用技术手段不同,分为:

  • 静态重定位
  • 动态重定位

静态重定位

  • 地址变换是在装入内存时一次性完成的,并且以后不能移动
  • 物理地址 = 相对地址 + 内存中的起始地址

适用于多道程序环境,可以将装入模块装入到内存中任何允许的位置

  • 优点:不需要硬件地址变换机构支持,可以装入有限多道程序
  • 缺点:一个程序通常占用连续的内存空间,装入内存后不能移动,不易实现共享

三、动态运行时装入方式

装入程序将装入模块装入内存后,并不立即把装入模块中的相对地址转换为绝对地址,而是把这种地址转换推迟到程序执行时进行。

动态重定位:在硬件地址变换机构的支持下,随着对每条指令或数据的访问自动进行地址变换。

重定位寄存器 RR:将相对地址与 RR 中的内容相加后得到的地址作为访问主存的地址。

采用动态重定位技术后,程序中所有指令和数据的实际地址是在运行过程中最后访问的时刻确定的。

主要优点:

  • 对主存的使用更加灵活有效
  • 几个作业共享一程序段的单个副本比较容易
  • 有可能向用户提供一个比主存的存储空间大得多的地址空间

主要缺点:

  • 需要附加硬件地址变换机构
  • 实现存储器管理的软件比较复杂

4.2.2  程序的链接

链接程序的功能:将编译后得到的一组目标模块以及它们所需要的库函数,装配成一个完整的装入模块。根据链接时间的不同,可把链接分成三种:

一、静态链接

在程序运行之前,先将各目标模块及它们所需的库函数,链接成一个完整的装入模块,以后不再拆开。装入模块又称为执行模块,或称为可执行文件。

应该是在装入内存之前完成链接的。

说明:将几个目标模块链接成一个装入模块时,需要解决以下两个问题:

1、对相对地址进行转换:将除第一个模块外的模块的相对地址转换为装入模块中相对地址。

2、对外部调用符号进行转换:将每个模块中所用的外部调用符号,都转换为相对地址。

例如将 call B 变换为 JSR “L”

二、装入时动态链接

用户源程序经编译后所得到的目标模块,是在装入内存时,边装入边链接的。即在装入一个目标模块时,若发生一个外部模块调用,将引起装入程序去找出相应的外部目标模块,并将其装入内存。

优点:

1、便于软件版本的修改和更新。对于经静态链接装配在一起的装入模块,如果要修改或更新其中的某个目标模块,则要求重新打开装入模块。这不仅是低效的,而且有时是不可能的。若采用动态链接方式,由于各目标模块是分开存放的,所以要修改或更新各目标模块是件非常容易得事。

2、便于实现目标模块共享。即可以将一个目标模块链接到几个应用模块中,从而实现多个应用程序对该模块的共享。

三、运行时动态链接

将对某些目标模块的链接推迟到程序执行时才进行,即在执行过程中,若发现一个被调用模块尚未装入内存时,立即由 OS 去找到该模块,将它装入内存,并链接到调用模块上。

优点:执行过程中未被用到的目标模块,都不会被调入内存和被链接到装入模块上,不仅可加快程序的装入过程,而且可节省大量的内存空间。

http://www.hkea.cn/news/78982/

相关文章:

  • 水友做的yyf网站十大免费引流平台
  • 东莞公司网站制作百度识图网页版 在线
  • 企业级网站内容管理解决方案网站关键词快速排名服务
  • 影视采集网站怎么做收录关键词是网站seo的核心工作
  • 开发一个网站需要多少时间百度账号免费注册
  • 化妆品网站主页设计长沙关键词优化方法
  • 南阳建网站企业百度推广优化工具
  • 怎样把自己做的网页放在网站里如何做宣传推广营销
  • 七谷网络工作室重庆优化seo
  • 东莞网站建设规范软文内容
  • 项目网站建设业务分析搜索优化的培训免费咨询
  • linux做网站服务器吗关键词上首页软件
  • 西安网站建设行业动态手机营销软件
  • 做推送的网站推荐今日新闻摘抄50字
  • 想在自己的网站做支付优化公司治理结构
  • 国内一家做国外酒店团购的网站网络推广优化是干啥的
  • 手机3d动画制作软件重庆网络seo公司
  • 青海和城乡建设厅网站石家庄自动seo
  • 建站网址是多少深圳市seo上词多少钱
  • 应用网站开发创建网站花钱吗
  • 2023太原疫情优化设计答案大全
  • 创新的专业网站建设适合小学生的新闻事件
  • 政府机关备案网站百度竞价什么意思
  • 广元专业高端网站建设seo视频
  • 烟台网站建设诚信臻动传媒百度网络营销中心
  • 贵阳网站建设搜王道下拉重庆seo网络推广关键词
  • 大型 网站的建设 阶段百度官方网站下载
  • 江苏专业做网站的公司百度地图导航网页版
  • 怎么去投诉做网站的公司宁波seo外包推广软件
  • 网络营销跟做网站有什么区别线上推广如何引流