2016-09-26 87 views
0

我想知道映射/表示內存的最佳方式是什麼。我的意思是,例如,如何描述一個結構,其所有字段都要序列化。「mangle」(代表)內存的最佳方式

我正在創建一個RPC庫,它將使用矮人調試數據創建客戶端和服務器,所以我需要創建一個函數包裝來序列化和反序列化函數的參數。

現在,我使用gcc mangling類型來標識所有字段,但編譯器有時會創建空間來優化內存訪問時間;

DwarfDumpIDE

任何想法?

回答

1

我使用了「穀物」庫序列化(​​)

替代品包括谷歌的協議緩衝區,但我發現它太難爲我相對簡單的序列化任務整合。

對於進程和語言之間的通信,我對ZeroC的ICE庫(https://zeroc.com/products/ice)有了很好的體驗。您將結構具體化爲類似於Google協議緩衝區的外部編譯步驟。好的部分是網絡連接也被關掉了。

+0

我已經使用CBOR庫序列化。我只需要代表記憶。指針,字符,整型,雙精度型,浮點型,長等等。我正在使用gcc mangling字母... –

+2

@MarceloAleksandravicius:謹慎的切詞:永遠不要試圖去掉不可信的數據。現有的名稱修改方案對於惡意使用不具有強大的功能,現有的實施方法可被利用。 –

+1

@MarceloAleksandravicius你的問題不清楚。你說問題是'編譯器有時會創建漏洞',這可以通過使用序列化庫來解決。 – Mikhail