前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【操作系统】程序的三种链接方式(2)

【操作系统】程序的三种链接方式(2)

原创
作者头像
魏宝航
修改2022-07-29 15:23:15
1.1K0
修改2022-07-29 15:23:15
举报
文章被收录于专栏:开源技术开源技术

1.静态链接:将各个模块链接成一个完整的装配模块,在链接之间每个模块的指令以及数据分别是从0-M进行编址,比如第一个模块长度为M,第二个模块的长度为,链接前两个模块的地址分别为0-M,0-N,但是链接后会将两个模块的地址进行修改,变成0-M+N。

2.装入时动态链接:编译后得到的一组模块先不链接成一个完整的装配模块,而是将这件事情推迟,在将每个模块装入内存时才做,每个模块边装入然后边链接,链接就是将各组模块的相对地址重新编址,而装入是实现逻辑地址到物理地址的转换,将程序模块在内存中找到一个地方进行存放,然后可以通过逻辑地址进行访问内存的物理地址。

3.运行时动态链接:对于程序的有些模块可能在程序的运行期间根本不会使用,如果将这些模块也一同链接装入内存,这样会导致浪费内存空间以及延长装入时间,而运行时动态链接是在程序执行中需要该模块时才进行链接的,如果不需要某个模块,这个模块时不会被调入内存和链接到装入模块的。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档