防內(nèi)存越界的程序編譯方法及裝置

基本信息

申請(qǐng)?zhí)?/td> CN202111033200.3 申請(qǐng)日 -
公開(kāi)(公告)號(hào) CN113485716A 公開(kāi)(公告)日 2021-10-08
申請(qǐng)公布號(hào) CN113485716A 申請(qǐng)公布日 2021-10-08
分類號(hào) G06F8/41(2018.01)I;G06F12/02(2006.01)I;G06F12/1009(2016.01)I 分類 計(jì)算;推算;計(jì)數(shù);
發(fā)明人 劉曉建 申請(qǐng)(專利權(quán))人 支付寶(杭州)信息技術(shù)有限公司
代理機(jī)構(gòu) 北京博思佳知識(shí)產(chǎn)權(quán)代理有限公司 代理人 李威
地址 310000浙江省杭州市西湖區(qū)西溪路556號(hào)8層B段801-11
法律狀態(tài) -

摘要

摘要 本說(shuō)明書一個(gè)或多個(gè)實(shí)施例提供一種防內(nèi)存越界的程序編譯方法及裝置,其中所述方法包括:在將源程序編譯為目標(biāo)程序的過(guò)程中,針對(duì)所述源程序中的內(nèi)存訪問(wèn)代碼生成地址拼接機(jī)器碼,所述目標(biāo)程序?qū)?yīng)的內(nèi)存分配空間處于一段連續(xù)的虛擬地址段內(nèi),所述虛擬地址段的段基址包含位于高位的段號(hào)和位于低位的若干零值邏輯位,所述虛擬地址段的段長(zhǎng)不小于所述若干零值邏輯位所能夠表示的最大地址空間;所述地址拼接機(jī)器碼用于:針對(duì)所述內(nèi)存訪問(wèn)代碼所需訪問(wèn)的原始地址,將所述原始地址的低位數(shù)據(jù)與所述段號(hào)進(jìn)行拼接,得到的拼接地址用于替代所述原始地址以訪問(wèn)內(nèi)存中的目標(biāo)內(nèi)存空間,其中所述低位數(shù)據(jù)與所述零值邏輯位的位數(shù)相同。