999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Linux操作系統(tǒng)的虛擬軟件平臺內存管理設計

2015-03-06 07:13:02殷錫亮
黑龍江科學 2015年1期
關鍵詞:進程系統(tǒng)管理

殷錫亮

(哈爾濱僑航通信設備有限公司,哈爾濱 150028)

現(xiàn)代嵌入式處理器上越來越多的使用Linux操作系統(tǒng)。這不僅由于Linux是免費開源的,并有眾多的軟件開發(fā)者共同開發(fā),它也具有實時性等特點,來滿足嵌入式系統(tǒng)開發(fā)所需的特性。雖然Linux本身就提供很好的內存使用機制,但是由于通信軟件對內存使用有其特殊的方式,長期的直接運行于Linux之上會造成很多的內存碎片,造成無法申請到內存。

本文基于Linux操作系統(tǒng)設計了一種虛擬軟件平臺,并著重介紹這個虛擬平臺提供的內存管理機制。

1 Linux操作系統(tǒng)以及虛擬軟件平臺

1.1 Linux操作系統(tǒng)

Linux是一套免費使用和自由傳播的類Unix操作系統(tǒng),是一個基于POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統(tǒng)。它能運行主要的UNIX工具軟件、應用程序和網絡協(xié)議。它支持32位和64位硬件。Linux繼承了Unix以網絡為核心的設計思想,是一個性能穩(wěn)定的多用戶網絡操作系統(tǒng)。

由于Linux具有的眾多特性,通信設備中越來越多地采用Linux,代替費用昂貴的Vx Works操作系統(tǒng)。盡管會降低一定程度的實時性,但由于實時業(yè)務的逐年下降,取而代之的是非實時的數據業(yè)務,系統(tǒng)對于實時性的依賴程度逐漸降低,這也為使用linux提供了可行性。

1.2 虛擬軟件平臺

通信軟件架構一般采用如下圖的軟件架構模式。

圖1

虛擬軟件平臺位于操作系統(tǒng)與上層軟件之間,屏蔽了操作系統(tǒng)的特性,由于其特殊的作用,所以它必須提供諸如TCP/IP通信,進程間通信,進程調度,內存管理,定時器管理,狀態(tài)機等諸多功能,而最為重要的就是內存管理。

2 內存管理

2.1 內存的分類

系統(tǒng)內存分為堆內存以及棧內存,對于小于2048字節(jié)的內存,一般使用的是棧內存,這種大小的數據區(qū)一般用來傳輸信令數據,對于傳輸更大的數據塊,需要申請的是堆內存。

2.2 內存池初始化

根據分析通信系統(tǒng)軟件架構,大概需要幾種消息類型,它們使用的數據長度大約為128字節(jié),256字節(jié),512字節(jié),1024字節(jié),2 048 字節(jié),4 096字節(jié),8 192字節(jié),16 384字節(jié)等。(如圖2所示)

圖2

在內存池的構建上,我們也根據需求,分別向操作系統(tǒng)申請堆內存以及棧內存。其中小于以及等于2 048字節(jié)的,申請棧內存,即靜態(tài)數據區(qū)內存;對于大于2 048字節(jié)的,申請堆內存,即動態(tài)內存區(qū)內存。但是動態(tài)內存在內存池初始化后對于操作系統(tǒng)來說,它也變成了靜態(tài)的內存,因為所有的內存申請操作以及回收操作,都是這一片在初始化即申請到的系統(tǒng)內存上面進行。

2.3 內存分配使用算法

根據業(yè)務模塊調用傳進的數據長度參數,判斷數據長度是屬于哪一個數據區(qū)間,如果小于64字節(jié),即使用64字節(jié)內存池,如果數據長度在64與128之間,則使用128字節(jié)內存池,以此類推。

申請到內存池的內存塊后,內存管理模塊,自動把它從就緒隊列移到運行隊列尾,并根據系統(tǒng)時間戳,申請串號(內存池行號以及列號),申請內存進程ID,對內存塊標注(形成一個唯一的標識),直到內存申請進程釋放這片內存,內存管理模塊根據申請串號在運行隊列找到這片內存,并把它內容清空,放回到就緒隊列尾。

2.4 并發(fā)申請

如果使用內存管理模塊的應用進程為多線程處理,就必須在申請內存的操作以及釋放內存的操作加入互斥機制,比如線程鎖,或者信號的PV操作,等等,用來保護內存管理機制,使其能夠串行地對內存池進行操作。

抑或為了增加系統(tǒng)的并發(fā)性處理機制,可以在初始化的時候明確應用進程使用幾個線程,為每個線程獨立配備一個內存池,這樣不會出現(xiàn)競爭機制,加快了系統(tǒng)的運行速度。

筆者推薦后一種方法,因為通信軟件的系統(tǒng)特性,這種處理方法更有利于系統(tǒng)穩(wěn)定的運行。

3 結語

內存作為一個系統(tǒng)軟件運行依賴最為重要的資源,需要統(tǒng)一地進行分配管理,不能由上層的業(yè)務模塊自行調用系統(tǒng)A P I,去直接操作系統(tǒng)內存,這樣會造成內存碎片的產生,降低系統(tǒng)的可靠性。

[1] (美)博韋.深入理解 LINUX內核[M].陳莉群,馮銳,牛欣源,譯.中國電力出版社,2008.

[2] [美]洛夫.Linux系統(tǒng)編程[M].東南大學出版社,2009.

[3] Dharma Prakash AgrawalQing-An Zeng.無線與移動通信系統(tǒng)[M].徐春秀,武穆清,譯.人民郵電出版社,2005.

[4] (美)W.Richard Stevens Stephen A.Rago.UNIX環(huán)境高級編程[M].尤晉元,張亞英,戚正偉,譯.人民郵電出版社,2008.

[5] 嚴蔚敏,吳偉民.數據結構(C語言)[M].清華大學出版社,2007.

猜你喜歡
進程系統(tǒng)管理
棗前期管理再好,后期管不好,前功盡棄
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
“這下管理創(chuàng)新了!等7則
雜文月刊(2016年1期)2016-02-11 10:35:51
人本管理在我國國企中的應用
社會進程中的新聞學探尋
民主與科學(2014年3期)2014-02-28 11:23:03
我國高等教育改革進程與反思
主站蜘蛛池模板: 蝴蝶伊人久久中文娱乐网| 久久99国产综合精品1| 99re精彩视频| 免费国产一级 片内射老| 日本尹人综合香蕉在线观看| 成人国产精品网站在线看| 国产欧美日韩va| 国产无码高清视频不卡| 激情五月婷婷综合网| 欧美视频在线不卡| 国产欧美高清| 风韵丰满熟妇啪啪区老熟熟女| 欧美成人影院亚洲综合图| 国产一区二区色淫影院| 高潮毛片免费观看| 高清欧美性猛交XXXX黑人猛交| 国产亚洲第一页| 亚洲国产日韩视频观看| 熟女视频91| 波多野结衣一区二区三区四区| 亚洲AV无码乱码在线观看裸奔| 国产精品人人做人人爽人人添| 亚洲制服中文字幕一区二区| 欧美精品影院| 精品一区国产精品| 色综合久久久久8天国| 91极品美女高潮叫床在线观看| 欧美日韩中文字幕在线| 日韩AV无码免费一二三区| 丁香五月激情图片| 99久久精品国产综合婷婷| 尤物在线观看乱码| 依依成人精品无v国产| 国产成人一区在线播放| 亚洲国产成人精品青青草原| 特级做a爰片毛片免费69| 国产成人喷潮在线观看| 午夜视频www| 欧美人与牲动交a欧美精品| 免费毛片网站在线观看| 中文字幕日韩视频欧美一区| 国产成人免费| 色综合天天综合中文网| 日韩av无码精品专区| 日韩无码黄色| 欧美成人影院亚洲综合图| 国产精品福利在线观看无码卡| 精品一区二区三区中文字幕| 99无码中文字幕视频| 19国产精品麻豆免费观看| 亚洲 欧美 中文 AⅤ在线视频| 欧美成人A视频| 亚洲日韩AV无码精品| 国产三区二区| 1769国产精品免费视频| jizz国产在线| 国产欧美性爱网| 国产一区二区影院| 午夜日韩久久影院| 91精品在线视频观看| 亚洲国产91人成在线| 欧美专区在线观看| 成人午夜精品一级毛片| 青草视频网站在线观看| 国产精品美女免费视频大全| 99re免费视频| 蜜桃臀无码内射一区二区三区| 伊人久久福利中文字幕| 色老头综合网| 波多野结衣国产精品| 波多野结衣一区二区三区88| 99久久精品国产麻豆婷婷| 免费人成视网站在线不卡 | 久久综合九色综合97网| 色九九视频| igao国产精品| 在线国产资源| 欧美a√在线| 91久久夜色精品| 黄色福利在线| 成年av福利永久免费观看| 亚洲天堂网在线视频|