音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

關(guān)于多任務(wù)操作系統(tǒng)中變量保存的問題

作者:crying_p 欄目:MCU技術(shù)
關(guān)于多任務(wù)操作系統(tǒng)中變量保存的問題
假設(shè)現(xiàn)在我有2個任務(wù),任務(wù)1和任務(wù)2中所定義的都是局部變量,比如任務(wù)1中有1個10字節(jié)的數(shù)組需要填充,在傳統(tǒng)的前后臺系統(tǒng)中,當(dāng)數(shù)據(jù)被填滿進(jìn)入任務(wù)2后,原有的任務(wù)1中的局部變量所占用的RAM空間被釋放,那么在多任務(wù)操作系統(tǒng)中,假設(shè)填充到第五個字節(jié)的時候,任務(wù)1切換到了任務(wù)2,那么這個時候這10個字節(jié)的數(shù)據(jù)空間在任務(wù)切換過后是否被釋放了呢?(假設(shè)我給任務(wù)1定義的這個數(shù)組為局部變量)舉個例子,比如我要向任務(wù)1的數(shù)組內(nèi)依次填充0-9這10個數(shù),現(xiàn)在填充到4的時候,任務(wù)2搶占了CPU,任務(wù)切換了,那么當(dāng)我執(zhí)行完任務(wù)2再回到任務(wù)1中繼續(xù)對后續(xù)數(shù)組內(nèi)的數(shù)據(jù)進(jìn)行填充,這時,以前填充過0-4的數(shù)組成員,它們里面存儲的數(shù)據(jù)還是0-4嗎?請DX指點

2樓: >>參與討論
平常人
任務(wù)的調(diào)度是不會改變?nèi)魏稳蝿?wù)的局部變量,除非那個任務(wù)被殺死
否則操作系統(tǒng)的任務(wù)調(diào)度就沒有意義了。

3樓: >>參與討論
crying_p
謝謝樓上的
那也就是說,只要任務(wù)不被DEL,它所定義的局部變量實際跟static定義的全局變量一樣都會占用固定的RAM空間了,看來操作系統(tǒng)移植入MCU后所增加的RAM占用量不僅僅是操作系統(tǒng)建立需要占用的RAM空間以及各任務(wù)所占用的獨立堆棧空間,還有各任務(wù)中本來在前后臺系統(tǒng)中被調(diào)用后就自動釋放的RAM空間,對RAM的占用看來不小哦。

4樓: >>參與討論
平常人
局部變量與static定義的全局變量不同,它不一定占用固定RAM空間
實際上在很多系統(tǒng)中,局部變量被分配到堆棧中。

5樓: >>參與討論
computer00
暈死,使用操作系統(tǒng)又不是為了在讓任務(wù)切換時節(jié)省內(nèi)存
剛好相反,要增加內(nèi)存的開銷. 使用操作系統(tǒng)只是為了增加管理功能和通用功能,是以犧牲硬件的性能換來的。

否則做一個任務(wù)切換,原來任務(wù)的RAM空間被釋放了,那原來的任務(wù)怎么辦?在創(chuàng)建任務(wù)時要保存程序控制塊,
并且在做任務(wù)切換時,要保存上下文,有些操作系統(tǒng)甚至要為每個任務(wù)花幾百甚至上千的字節(jié)來保存這些東東。

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
uc_os2中對任務(wù)堆棧的數(shù)據(jù)類型定義
一方案請各位給個可行性分析.(廣大人士都必進(jìn)來看看)
周立功的那個Mass Storage Kit現(xiàn)在要多少錢一塊,還有賣的么
急!! LPC2214中VPB時序問題!
秀一個溫濕度變送器-LPC901
免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號