檔案空間變大的乙個特例

2021-04-08 20:59:44 字數 1125 閱讀 3759

檔案空間變大的乙個特例

最近寫乙個通過漢字得到拼音的函式庫,發現編譯成靜態庫

(.a)

檔案大小為

300多

k,編譯成共享庫檔案陡增到

500多

k。這讓我莫名其妙,開始以為是除錯資訊引起的,但

strip

之後沒有多大變化。 用

objdump

看了一下:

[root@localhost pinyin]# objdump -h libpinyin.so

5 .rel.dyn00036840000003cc000003cc000003cc2**2

11 .rodata000527b300036e0000036e0000036e002**5

重定位符號竟佔了

223296(0x00036840)

位元組,再檢視定位符號:

[root@localhost pinyin]# objdump -r libpinyin.so

libpinyin.so:file format elf32-i386

dynamic relocation records

offsettypevalue

00036d30 r_386_relative*abs*

00036d37 r_386_relative*abs*

00036d3c r_386_relative*abs*

00036d6a r_386_relative*abs*

0006e1a0 r_386_relative*abs*

0006e1a4 r_386_relative*abs*

0006e1a8 r_386_relative*abs*

0006e1ac r_386_relative*abs*

0006e1b0 r_386_relative*abs*

0006e1b4 r_386_relative*abs*

0006e1b8 r_386_relative*abs*

…這下我明白了:資料裡使用了很多小字串,每個字串都有乙個定重位符號,累積起來的就大了。要減小空間佔用量,有兩個方法,編譯成靜態庫,或者把小字串合併起來,通過偏移量訪問。

關於表空間的乙個問題

最近在進行資料庫伺服器維護的時候發生某個表空間 名為ppstt 佔用率過高,如何解決這一問題,上網查了很多這方面的資料,因為本人對資料庫管理還是個生手,所以只好求教於同事.同事發過來一文件,照著操作,問題解決了.資料庫伺服器為 sun microsystems inc sunos 5.9 資料庫為 ...

乙個人的空間

你離開的那一天天空有點灰 見不著你最愛的藍天 少了乙個人鬥嘴 多些朋友的安慰 一切都不是錯覺 來不及道聲感謝 故事已結尾 太多事情來不及後悔 我還有太多心願 太多夢沒有實現 桌上還留著過去的 我乙個人的失眠 乙個的空間 乙個人的想念 兩個人的畫面 是誰的眼淚 是誰的憔悴 灑滿地的心碎 我乙個人的冒險...

乙個節省空間的小技巧

我們往往習慣將運算過程的臨時結果儲存起來,這樣的思想比較容易理解也是慣性的思維,然而往往大多數情況下我們不需要儲存中間過程的變數。這裡舉乙個例子,杭電oj的1003題maxsum,雖然同時採用暴力求解,但是中間的sum結果不採用二維陣列儲存而只是簡單的通過每次置0後重新計算這樣就可以節省空間。雖然超...