自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Unix操作系統(tǒng)下的LD_PRELOAD環(huán)境變量

系統(tǒng) 其他OS
開始講述為什么要當(dāng)心Unix操作系統(tǒng)LD_PRELOAD環(huán)境變量之前,請(qǐng)讓我先說明一下程序的鏈接。所謂鏈接,也就是說編譯器找到程序中所引用的函數(shù)或全局變量所存在的位置。

今天,我們來學(xué)習(xí)Unix操作系統(tǒng)的知識(shí)。也許這個(gè)話題并不新鮮,因?yàn)長(zhǎng)D_PRELOAD所產(chǎn)生的問題由來已久。不過,在這里,我還是想討論一下這個(gè)環(huán)境變量。因?yàn)檫@個(gè)環(huán)境變量所帶來的安全問題非常嚴(yán)重,值得所有的Unix操作系統(tǒng)下的程序員的注意。

在開始講述為什么要當(dāng)心Unix操作系統(tǒng)LD_PRELOAD環(huán)境變量之前,請(qǐng)讓我先說明一下程序的鏈接。所謂鏈接,也就是說編譯器找到程序中所引用的函數(shù)或全局變量所存在的位置。

一般來說,Unix操作系統(tǒng)程序的鏈接分為靜態(tài)鏈接和動(dòng)態(tài)鏈接,靜態(tài)鏈接就是把所有所引用到的函數(shù)或變量全部地編譯到可執(zhí)行文件中。動(dòng)態(tài)鏈接則不會(huì)把函數(shù)編譯到可執(zhí)行文件中,而是在程序運(yùn)行時(shí)動(dòng)態(tài)地載入函數(shù)庫(kù),也就是運(yùn)行鏈接。

所以,對(duì)于Unix操作系統(tǒng)動(dòng)態(tài)鏈接來說,必然需要一個(gè)動(dòng)態(tài)鏈接庫(kù)。動(dòng)態(tài)鏈接庫(kù)的好處在于,一旦動(dòng)態(tài)庫(kù)中的函數(shù)發(fā)生變化,對(duì)于可執(zhí)行程序來說是透明的,可執(zhí)行程序無需重新編譯。這對(duì)于程序的發(fā)布、維護(hù)、更新起到了積極的作用。對(duì)于靜態(tài)鏈接的程序來說,函數(shù)庫(kù)中一個(gè)小小的改動(dòng)需要整個(gè)程序的重新編譯、發(fā)布,對(duì)于程序的維護(hù)產(chǎn)生了比較大的工作量。

當(dāng)然,世界上沒有什么東西都是完美的,有好就有壞,有得就有失。動(dòng)態(tài)鏈接所帶來的壞處和其好處一樣同樣是巨大的。

因?yàn)槌绦蛟谶\(yùn)行時(shí)動(dòng)態(tài)加載函數(shù),這也就為他人創(chuàng)造了可以影響你的主程序的機(jī)會(huì)。試想,一旦,你的Unix操作系統(tǒng)程序動(dòng)態(tài)載入的函數(shù)不是你自己寫的,而是載入了別人的有企圖的代碼,通過函數(shù)的返回值來控制你的程序的執(zhí)行流程,那么,你的程序也就被人“劫持”了。

關(guān)于這次對(duì)Unix操作系統(tǒng)的介紹到這里了。

【編輯推薦】

  1. 查看Unix操作系統(tǒng)內(nèi)存占用
  2. 讓DOS與Unix文件相互兼容
  3. Unix操作系統(tǒng)與Dos文件差異所在
  4. Unix操作系統(tǒng)管理客戶端
  5. Unix操作系統(tǒng)多個(gè)主機(jī)的表示方法
責(zé)任編輯:小霞
相關(guān)推薦

2010-04-20 16:58:30

Unix操作系統(tǒng)

2010-04-20 15:05:47

Unix操作系統(tǒng)

2010-04-20 14:43:01

Unix操作系統(tǒng)

2010-04-19 15:11:25

Unix操作系統(tǒng)

2010-04-08 10:42:28

Unix操作系統(tǒng)

2010-04-30 01:35:46

Unix系統(tǒng)

2010-04-09 09:11:20

Unix操作系統(tǒng)

2010-04-15 10:53:20

2010-04-14 16:45:15

Unix操作系統(tǒng)

2010-04-21 16:58:51

Unix環(huán)境變量

2010-01-06 15:18:19

Linux操作系統(tǒng)

2010-04-15 14:40:26

Unix操作系統(tǒng)

2010-04-06 12:45:28

CentOS系統(tǒng)

2010-04-13 12:27:44

Unix操作系統(tǒng)

2010-04-16 09:27:36

2010-04-30 17:53:29

2010-04-09 10:49:01

Unix操作系統(tǒng)

2010-04-28 19:11:29

Unix操作系統(tǒng)

2010-05-06 17:59:50

Unix命令

2010-04-08 16:18:22

Unix操作系統(tǒng)工具
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)