首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
山芹
嵌入式软件开发
发布于四川
关注
已关注
取消关注
@编程十万问:
『面试问答』:静态链接和动态链接的区别是什么?
面试官:请说一下,静态链接和动态链接的区别是什么?一个C/C++文件要经过预处理(preprocessing)、编译(compilation)、汇编(assembly)和链接(linking)4步才能变成可执行文件。程序代码首先经过预处理器生成 .i 文件。然后通过编译器生成 .s 汇编文件,再通过汇编器生成 .o 目标文件,最后通过链接器链接生成可执行文件。在链接阶段,根据链接过程中处理方式的不同,链接可以分为静态链接和动态链接。静态链接是在链接阶段,就把所有需要的函数的二进制代码都包含到可执行文件中去,完成所有符号引用的一种链接方式。而动态链接在链接的时候不直接拷贝相应依赖库的代码,而是通过记录一系列符号和参数,在程序运行或加载时将这些信息传递给操作系统,由操作系统负责将需要的依赖库加载到内存中,然后程序在运行到指定代码时,去执行内存中已经加载的依赖库的代码,最终达到运行时链接的目的。静态链接和动态链接对应的链接库也不同,可分为两种,分别是静态链接库和动态链接库,在Linux中,静态链接库文件以.a作为文件后缀,动态链接库以.so作为文件后缀。静态库会在链接阶段将静态库中的代码复制到可执行文件中,当程序在执行的时候,在可执行文件中本身就有了静态库的代码,可以直接调用。动态库则不会将代码打包到可执行文件中,而是打包动态库的名称等信息,在可执行程序运行的时候,需要去找到动态库的文件,然后把动态库加载到内存中才可以使用动态库中的代码。静态库被打包到可执行程序中,生成的可执行文件较大,但是程序加载运行速度会比较快,发布程序时,也无需提供静态库,移植比较方便。但是当多个程序链接同一个静态库时,生成的每一个可执行文件中,都会含有这个静态库,相当于在内存中同时运行着两个相同的静态库,比较浪费系统资源。另外,当静态库的内容发生更新时,依赖该静态库的程序也需要重新进行链接,导致程序的更新升级会比较麻烦。动态库可以实现进程间资源共享,比如可执行程序A在运行时用到了某个动态库,那么系统会将该动态库的代码动态加载到内存中,此时若正在运行的程序B也需要用到该动态库中的代码,则不需要再次加载该动态库,而是可以与程序A共享。此外,当动态库的内容更新时,只需重新编译生成新的动态库即可,而不需要对依赖该动态库的程序重新进行编译链接。
点赞 1
评论 0
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
07-15 10:27
杭州电子科技大学 大数据开发工程师
面试官说我像AI 时而健谈,时而哑巴
破案了家人们!昨天面试被HR锐评 “像个人工智障”,今天我必须交代犯罪事实:是的,我用了AI外挂——但谁能想到它背刺我啊!! 😭事故还原:我:“贵司的数字化转型非常前瞻…” (内心OS:这段AI写的真好!流畅!有深度!✨)面试官:(频频点头,眼神欣赏)面试官:“如果让你具体设计落地流程,你会怎么协调技术部门?”我:(疯狂回忆AI给的答案关键词) “呃…首先…赋能…呃…打通闭环…那个…抓手…” 💬大脑: 警告!未加载该模块!🚨嘴巴: (沉默是今晚的康桥.jpg)面试官憋笑:“你刚才…是不是在用ChatGPT?”我:(瞳孔地震) “您…您怎么…?!” 😱她指指耳朵:“你耳机里Siri的提示...
你找工作的时候用AI吗?
点赞
评论
收藏
分享
07-16 13:49
苏州大学 集成电路IC设计
世界就是个巨大的草台班子
我本科是电子信息工程专业的,第一次实习面试通过的时候,当时激动地睡不着,那天晚上还在学习linux、指针等知识,想着我这个嵌入式岗位过去,是不是要开始接触项目,然后进行开发,还担心自己做不出来,被压力。到了那边,在开始几天的时候,基本上就是没啥事情,让你先了解下产品,看看好不好用,几十万的一个主机加从机,就隔着在那测pps、ttl、还有检测各种板卡,类似管理卡、钟卡等等,顶多就是烧录下程序,测试下功能。到后面才知道,基本研发工作是北京那边负责,我们这边无非就是看一点懂代码,然后调调参,大事没有,小事情不断,后面觉得根本学不到东西,就离职了,哈哈。
码农索隆:
工作就是那么回事,害
你以为的实习VS真实的实...
点赞
评论
收藏
分享
06-26 22:20
门头沟学院 Java
奇怪
怎么老是有这种啊
码农索隆:
让你把简历发给她,她说一些套话,然后让你加一个人,说这个人给你改简历,然后开始卖课
我的求职精神状态
点赞
评论
收藏
分享
07-16 11:55
辽宁大学 射频工程师
长鑫提前批
有点困惑,前面的流程都没啥难度难不成真就一轮面试决定招不招吗
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
我和妈妈讲以后我可能给不了她一个月1500
5634
2
...
滴滴提前批一面
5200
3
...
滴滴提前批一面秒挂面经
4635
4
...
后端实习到底该干什么啊
4450
5
...
王侯将相宁有种乎!
3644
6
...
明天五场面试,加油
3570
7
...
双非本应届是如何拿到30
3553
8
...
实习,别太较真
3280
9
...
腾讯提前批后台开发凉经teg
3102
10
...
卷王的风气还是吹到了实习
2982
创作者周榜
更多
正在热议
更多
#
如何提高实习转正率?
#
11177次浏览
157人参与
#
打工人的工作餐日常
#
51049次浏览
395人参与
#
追觅科技求职进展汇总
#
17588次浏览
119人参与
#
你觉得技术面多长时间合理?
#
98536次浏览
713人参与
#
哪些公司真双非友好?
#
14802次浏览
80人参与
#
26届的你们有几段实习?
#
37679次浏览
425人参与
#
月薪多少能在一线城市生存
#
20299次浏览
261人参与
#
你后悔自己读研吗?
#
15985次浏览
227人参与
#
你以为的实习VS真实的实习
#
22561次浏览
206人参与
#
双非能在秋招上岸吗?
#
220558次浏览
1166人参与
#
当下环境,你会继续卷互联网,还是看其他行业机会
#
116855次浏览
808人参与
#
你认为哪些项目算烂大街?
#
15188次浏览
258人参与
#
机械校招之路总结
#
93357次浏览
1893人参与
#
非技术2023笔面经
#
248194次浏览
2412人参与
#
你被哪些公司秒挂过?
#
28314次浏览
234人参与
#
网申一定要掌握的小技巧
#
10519次浏览
66人参与
#
学历贬值真的很严重吗?
#
23128次浏览
165人参与
#
最难的技术面是哪家公司?
#
8448次浏览
69人参与
#
找工作时的取与舍
#
82394次浏览
588人参与
#
机械人,你拿到几个offer啦
#
38639次浏览
320人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务