当前位置:网站首页>Static library vs shared library
Static library vs shared library
2022-07-03 11:11:00 【MrPeng1991】
- Static library
Before the shared library appeared , Public functions exist in the form of static libraries , Package multiple object files of the general function module , The program that uses it only needs to specify this library file when linking , The linker will extract the functional code used from this library and copy it to the target program , There is no need to recompile these general function codes every time .
Static library embodies a good idea of modularization , But with the development of computer industry , The static library gradually exposes two serious problems
- Large disk and memory space . Although the static library accelerates the compilation speed , It improves the efficiency of collaboration between different departments , But in the program linked by each static library , Will save a copy of the referenced general function code , And at runtime , Each copy will occupy the corresponding physical memory .
- Upgrading the version of the library is very troublesome , Once the public library is modified , Every program that references him needs to be relinked with the new version of the Library . In a scenario where libraries and applications are maintained by different companies or organizations , The upgrade work has become extremely complex , If there is bug Repair , All applications using this library need to be upgraded separately
- Shared library
To solve these two problems , Shared library technology came into being .
First , Applications that use shared libraries when compiling links , Do not copy the functions in the library to the target file , Only one reference is recorded in the target file , Mark the library function referred to , Until the program runs Only dynamic connector can locate the position of function code , Therefore, the volume of the generated executable program is significantly reduced .
secondly , Each shared library has only one copy in physical memory , Multiple applications will map the same executable file in their virtual address space , Therefore, it can save objective memory space .
This working mode of shared library greatly facilitates the upgrading of the Library , When the shared library releases a new version , Users only need to upgrade this shared library , All applications that use this library can automatically get the features in the new library or bug Repair , Instead of upgrading each application separately .
边栏推荐
- 数据库增量备份 - DB INCR DB FULL
- "Core values of testing" and "super complete learning guide for 0 basic software testing" summarized by test engineers for 8 years
- 软件测试(测试用例)编写之俗手、本手、妙手
- 8年测试工程师总结出来的《测试核心价值》与《0基础转行软件测试超全学习指南》
- 10. Nacos source code construction
- 【Proteus仿真】74HC154 四线转12线译码器组成的16路流水灯
- Solve the problem that pycharm Chinese input method does not follow
- Qt:qss custom qgroupbox instance
- I, a tester from a large factory, went to a state-owned enterprise with a 50% pay cut. I regret it
- How can UI automated testing get out of trouble? How to embody the value?
猜你喜欢
【蓝桥杯选拔赛真题44】Scratch消灭骷髅军团 少儿编程scratch蓝桥杯选拔赛真题讲解
What is the salary level of 17k? Let's take a look at the whole interview process of post-95 Test Engineers
封装一个koa分布式锁中间件来解决幂等或重复请求的问题
软件测试工程师的5年之痒,讲述两年突破瓶颈经验
最高月薪18K 拥有好的“心态和选择”, 成功就差“认真和坚持”~
Unity移动端游戏性能优化简谱之 画面表现与GPU压力的权衡
Error installing the specified version of pilot
Encapsulation attempt of network request framework of retro + kotlin + MVVM
月薪过万的测试员,是一种什么样的生活状态?
Cause: org. apache. ibatis. builder. Builderexception: error parsing SQL mapper configuration problem analysis
随机推荐
英特尔13代酷睿旗舰曝光,单核5.5GHz
Stack, monotone stack, queue, monotone queue
封装一个koa分布式锁中间件来解决幂等或重复请求的问题
月薪过万的测试员,是一种什么样的生活状态?
我,大厂测试员,降薪50%去国企,后悔了...
Hal - General
今晚要修稿子準備發佈。但是,仍卡在這裡,也許你需要的是一個段子。
Hal -- writing hardware drivers
ByteDance layoffs, test engineers were almost destroyed: how terrible is the routine behind the recruitment of large factories?
公司测试部门来了个00后卷王之王,老油条感叹真干不过,但是...
表空间创建管理及控制文件管理
我对测试工作的一些认识(资深测试人员总结)
IIS does not take effect after modifying the configuration information
Is pinduogai's sales safe in 2022?
8年测试工程师总结出来的《测试核心价值》与《0基础转行软件测试超全学习指南》
POI excel 单元格换行
Solve the problem that pycharm Chinese input method does not follow
Qt:qss custom qpprogressbar instance
大厂技术专家:工程师如何提升沟通能力?
Software testing (test case) writing: vulgar, native and skillful