當(dāng)前位置:首頁(yè) > 公眾號(hào)精選 > 嵌入式微處理器
[導(dǎo)讀]在嵌入式軟件開發(fā)中,我們不可避免的需要接觸優(yōu)先級(jí)的概念,掌握優(yōu)先級(jí)的概念對(duì)于設(shè)計(jì)一個(gè)好的軟件系統(tǒng)尤為重要。 本篇筆記的主要內(nèi)容有以下幾個(gè)方面: 1、中斷優(yōu)先級(jí) 2、操作系統(tǒng)中的任務(wù)優(yōu)先級(jí) 3、同等優(yōu)先級(jí)處理 4、中斷嵌套 今天魚鷹借助大家熟悉的 STM32

在嵌入式軟件開發(fā)中,我們不可避免的需要接觸優(yōu)先級(jí)的概念,掌握優(yōu)先級(jí)的概念對(duì)于設(shè)計(jì)一個(gè)好的軟件系統(tǒng)尤為重要。
本篇筆記的主要內(nèi)容有以下幾個(gè)方面:
1、中斷優(yōu)先級(jí)
2、操作系統(tǒng)中的任務(wù)優(yōu)先級(jí)
3、同等優(yōu)先級(jí)處理
4、中斷嵌套

今天魚鷹借助大家熟悉的 STM32F103 平臺(tái)和各位聊聊其中的密事。
首先,我們從一個(gè)裸機(jī)系統(tǒng)的變量自加開始說起。
這里有三個(gè)變量,A、B、C,其中 B 變量除了在 main 函數(shù)中自加外,還會(huì)在中斷處理函數(shù)中進(jìn)行自加。
這里面考慮了B的兩種情況,一是先執(zhí)行 main  中的自加再執(zhí)行中斷的自加,二是先執(zhí)行中斷的自加再進(jìn)行 main 的自加。
不管發(fā)生哪種情況,當(dāng)程序執(zhí)行到 C 位置時(shí),B 的值都是一樣的。
當(dāng)然,以上分析是從 C 語(yǔ)言的角度進(jìn)行分析的,如果以匯編的視角進(jìn)行分析(自加操作在匯編中分為三個(gè)步驟),你會(huì)發(fā)現(xiàn),這里面其實(shí)還有第三種情況:
這里面的 B’ 可以認(rèn)為是寄存器,即變量的 B 的副本。
正因?yàn)楦北镜拇嬖?,在main 函數(shù)的寫入過程中導(dǎo)致丟失了中斷中 B 的自加操作。
對(duì)于程序而言,就好像根本沒有進(jìn)入中斷一樣!
這就是全局變量的使用隱患。
但是善于分析的道友可能會(huì)提出這樣一個(gè)疑問,為什么上面只考慮了main 函數(shù)中的B++被打斷的可能,卻沒有考慮中斷(橙色部分)的B++被打斷的可能,是魚鷹忽略了嗎?
不不,其實(shí)這里面就涉及到了今天的主題,優(yōu)先級(jí)。
在裸機(jī)系統(tǒng)中,中斷優(yōu)先級(jí)高于main函數(shù)的處理,也就是說,一且中斷來(lái)臨, 不管main函數(shù)執(zhí)行到哪個(gè)位置,都會(huì)優(yōu)先處理中斷程序,只有中斷程序執(zhí)行完成后,才會(huì)繼續(xù)執(zhí)行main函數(shù),所以中斷的 B++ 不可能被main 函數(shù)打斷!

這里插兩個(gè)問題:
怎么進(jìn)入中斷函數(shù)的?
當(dāng)中斷請(qǐng)求(中斷請(qǐng)求可以認(rèn)為是種電平信號(hào),在寄存器中就表現(xiàn)為某一位的標(biāo)志位)來(lái)臨時(shí),硬件負(fù)責(zé)把部分寄存器存儲(chǔ)到棧(一種特殊的數(shù)據(jù)結(jié)構(gòu))中,這里面就包含了PC寄存器(用于指示下一條指令執(zhí)行的位置),之后從向量表中找到中斷處理函數(shù)的入口地址,開始進(jìn)入中斷處理函數(shù)中執(zhí)行。
怎么回到原來(lái)的位置?
因?yàn)樵谶M(jìn)入中斷前已經(jīng)保存了PC等其他寄存器的值,所以只要在執(zhí)行完中斷處理函數(shù)后,將之前的保存到棧中的值恢復(fù)回來(lái),那么CPU就可以繼續(xù)從被打斷的指令開始繼續(xù)執(zhí)行。
更多相關(guān)的中斷行為請(qǐng)查看《權(quán)威指南》,魚鷹不再細(xì)說。

回到剛才的優(yōu)先級(jí)話題,正因?yàn)橹袛嗟膱?zhí)行優(yōu)先級(jí)比main高,所以中斷中的 B++ 不會(huì)被打斷,這也是為什么有些時(shí)候,我們不需要對(duì)中斷中的變量進(jìn)行臨界保護(hù)的原因所在。

在 Cortex-M3 內(nèi)核中,中斷分為可屏蔽不可屏蔽中斷,同時(shí)又有可編程優(yōu)先級(jí)不可編程優(yōu)先級(jí)之分。
所謂可屏蔽,就是說這個(gè)中斷是可以屏蔽掉的,即使發(fā)生了中斷,也不會(huì)讓CPU執(zhí)行中斷里面的程序。
比如我們的定時(shí)器中斷,如果我們沒有開啟相應(yīng)的中斷的話,即使定時(shí)器溢出中斷來(lái)了,那也不會(huì)進(jìn)入中斷處理函數(shù)處理的。
不可屏蔽,就是說這個(gè)中斷是不可以屏蔽的,比如復(fù)位中斷(是不是不可思議,代碼執(zhí)行的第一條指令竟然是中斷處理函數(shù)里面的),如果復(fù)位中斷都被屏蔽了,那么系統(tǒng)也就別想運(yùn)行了。
可編程 ,意味著這個(gè)中斷的優(yōu)先級(jí)可以由軟件修改(不可編程,即優(yōu)先級(jí)固定死了,不能修改)。
中斷的優(yōu)先級(jí)在設(shè)置時(shí)又有搶占式優(yōu)先級(jí)非搶占式優(yōu)先級(jí)兩種設(shè)置(根據(jù)單片機(jī)不同,搶占式和非搶占式可設(shè)置的位數(shù)不同,并且可以分配各自的位數(shù),即所謂的中斷分組,如STM32F103 共有四位,通過設(shè)置中斷分組來(lái)決定搶占式和非搶占的位數(shù))。
搶占優(yōu)先級(jí),即如果中斷 1 的優(yōu)先級(jí)比中斷 2 的搶占優(yōu)先級(jí)高的話,一旦中斷1發(fā)出中斷請(qǐng)求,即使已經(jīng)在中斷 2 執(zhí)行了,也會(huì)強(qiáng)制進(jìn)入中斷 1 執(zhí)行,這個(gè)類似于 main 函數(shù)與中斷的關(guān)系,只不過這里兩個(gè)都是中斷而已。
在搶占優(yōu)先級(jí)相同情況下,非搶占優(yōu)先級(jí)就會(huì)開始起作用了。
如果中斷 1 和中斷 2 的搶占優(yōu)先級(jí)設(shè)置成一樣,而非搶占優(yōu)先級(jí)不一樣,此時(shí)如果兩個(gè)中斷同時(shí)發(fā)出請(qǐng)求,那么優(yōu)先處理非搶占優(yōu)先級(jí)高的中斷。
但是如果不是同時(shí)發(fā)生呢?那么就會(huì)依次處理中斷請(qǐng)求,在其中一個(gè)中斷處理過程中,是不可以被另一個(gè)中斷打斷的,同時(shí)如果本中斷再來(lái)一個(gè)請(qǐng)求,也不會(huì)重新進(jìn)入中斷函數(shù)處理。
中斷本身不可打斷自身的處理,換句話說中斷不會(huì)執(zhí)行到一半時(shí)又因?yàn)樽陨硇碌闹袛嗾?qǐng)求來(lái)臨而重新再次進(jìn)入本中斷處理函數(shù)執(zhí)行。

如果搶占優(yōu)先級(jí)和非搶占優(yōu)先級(jí)都設(shè)置成一樣呢,此時(shí)如果兩個(gè)中斷同時(shí)發(fā)生,又該選擇哪個(gè)先執(zhí)行,隨機(jī)嗎?
這里就涉及到硬件優(yōu)先級(jí)了。
在上圖中,每一個(gè)中斷其實(shí)都是有固定的默認(rèn)優(yōu)先級(jí)的,這個(gè)優(yōu)先級(jí)肯定不同,所以當(dāng)搶占優(yōu)先級(jí)和非搶占優(yōu)先級(jí)一樣的情況下,在中斷同時(shí)發(fā)生時(shí),先執(zhí)行默認(rèn)優(yōu)先級(jí)高的。
看圖:
講到了中斷,就不可不說如何禁止中斷的問題了。
在常規(guī)操作中,我們會(huì)使用禁止全局中斷來(lái)禁止中斷的處理,一旦禁止了全局中斷,那么除了不可屏蔽中斷外,所有的中斷都會(huì)被屏蔽掉,即如果在禁止中斷后發(fā)生了中斷,也不會(huì)再執(zhí)行。
但是一旦中斷打開了,那么之前被屏蔽的中斷就會(huì)立刻開始執(zhí)行(有一個(gè)中斷掛起位,代表中斷的發(fā)生,只有CPU執(zhí)行了中斷處理函數(shù),并清零相應(yīng)標(biāo)志位,該掛起位才會(huì)清除)。
如果在關(guān)閉中斷的過程中發(fā)送了兩次中斷,比如外部中斷發(fā)生了兩次,那么在開啟中斷后,也只會(huì)響應(yīng)一次中斷,因?yàn)閽炱鹞痪椭挥心敲匆晃唬ú幌耜?duì)列一樣可以保留多個(gè)標(biāo)志位)。

對(duì)于一般功能而言,禁止全局中斷確實(shí)有用,對(duì)于保護(hù)全局變量也非常有效,但是對(duì)于整個(gè)系統(tǒng)而言會(huì)有一定的影響。
如果禁止中斷的時(shí)間很短,那么確實(shí)無(wú)關(guān)緊要,但是一旦需要禁止較長(zhǎng)的時(shí)間(毫秒級(jí)別),對(duì)于那些需要及時(shí)處理的中斷而言,就是一個(gè)不可忽視的延遲。
而在操作系統(tǒng)中,為了保護(hù)那些全局變量,禁止中斷的操作時(shí)有發(fā)生,那么是否有一種方法可以 屏蔽部分中斷 ,而讓高優(yōu)先級(jí)的中斷不被屏蔽呢?
有的,在 Cor tex-M3 內(nèi)核中,有一個(gè)寄存器專門干這事,即 BASEPRI。
當(dāng)設(shè)置該寄存器時(shí),將屏蔽所有優(yōu)先級(jí)不高于某個(gè)具體值的中斷。
比如設(shè)置該寄存器為 3,那么優(yōu)先級(jí)0~ 2的中斷不會(huì)被屏蔽。
所以在操作系統(tǒng)中,我們可以修改禁止中斷的代碼,使其不會(huì)屏蔽高優(yōu)先級(jí)的中斷,對(duì)于高優(yōu)先級(jí)中斷來(lái)說,可增加實(shí)時(shí)性。
uCOS II 中默認(rèn)是直接全局禁止中斷的(可以修改它),但是 FreeRTOS 是可以禁止部分中斷的,使用的就是上述寄存器,當(dāng)然這個(gè)功能需要單片機(jī)本身支持才行。

以上就是中斷優(yōu)先級(jí)的內(nèi)容,如果只會(huì)裸機(jī)的話,那么以上內(nèi)容就差不多了,但是如果是操作系統(tǒng),那么需要再增加一個(gè)任務(wù)優(yōu)先級(jí)的概念。
所謂任務(wù),你也可以認(rèn)為是一種中斷,只不過,這種特殊的中斷優(yōu)先級(jí)低于所有的硬件觸發(fā)的中斷。

中斷的優(yōu)先級(jí)凌駕于所有任務(wù)之上。
也就是說,一旦中斷來(lái)臨,不管CPU正在執(zhí)行哪個(gè)任務(wù),在全局中斷開啟的情況下,都會(huì)立刻執(zhí)行中斷里的程序。
在中斷中,可以進(jìn)行中斷嵌套,所謂的中斷嵌套即當(dāng)前中斷被另一個(gè)更高優(yōu)先級(jí)的中斷所打斷(即搶占),被打斷的中斷必須在高優(yōu)先級(jí)任務(wù)執(zhí)行完成后才會(huì)繼續(xù)執(zhí)行。而在嵌入式實(shí)時(shí)操作系統(tǒng)中,為了更好的處理實(shí)時(shí)任務(wù),一般而言也會(huì)設(shè)置成可搶占的任務(wù)(亦稱可剝奪)。
中斷的優(yōu)先級(jí)處理是由內(nèi)核進(jìn)行管理的,這里的內(nèi)核是指單片機(jī)內(nèi)核,比如STM32F103的內(nèi)核是Cortex-M3(更準(zhǔn)確的說是由 NVIC 管理)。
一旦設(shè)置好相應(yīng)的寄存器之后,只要中斷來(lái)了,那么就會(huì)自動(dòng)處理中斷程序,這些工作由硬件完成,它會(huì)在多個(gè)中斷同時(shí)來(lái)臨時(shí)選擇最高的優(yōu)先處理;也會(huì)在中斷執(zhí)行時(shí),如果有一個(gè)更高優(yōu)先級(jí)的中斷來(lái)臨時(shí),打斷當(dāng)前中斷的執(zhí)行而先執(zhí)行更高優(yōu)先級(jí)的中斷。
但是操作系統(tǒng)是純軟件行為,那么操作系統(tǒng)的任務(wù)優(yōu)先級(jí)又是誰(shuí)管理的?又是如何管理的呢?
答案就在Systick中斷。
既然要管理所有任務(wù)的優(yōu)先級(jí),即在合適時(shí)選擇運(yùn)行優(yōu)先級(jí)最高的任務(wù),那么操作系統(tǒng)本身必然需要有能剝奪所有任務(wù)執(zhí)行的能力,而中斷是凌駕于任務(wù)之上的,可以在任何時(shí)候剝奪任務(wù)的執(zhí)行,從而獲得CPU的使用權(quán),所以選擇中斷作為操作系統(tǒng)的核心是合適的。

但是中斷那么多,選擇什么中斷比較合適呢?沒有比 Systick 中斷更合適的了,因?yàn)樗褪菫榇硕摹?/span>
Systick說白了就是一個(gè)定時(shí)器,但是和普通定時(shí)器不同的是,功能比較單一,就是一個(gè)計(jì)數(shù)器而已,所以使用它管理任務(wù)是合適的,不會(huì)占用其他定時(shí)器。

那么Systick又是如何管理任務(wù)的呢?
一般而言,Systick 會(huì)設(shè)置成幾毫秒中斷一次,在每次中斷時(shí),Systick處理程序(即操作系統(tǒng)內(nèi)核)都會(huì)從所有的任務(wù)中選擇最高優(yōu)先級(jí)的任務(wù)執(zhí)行,也就是說,系統(tǒng)總是運(yùn)行最高的任務(wù)。
而這個(gè)特性也就導(dǎo)致你的高優(yōu)先級(jí)任務(wù)不可以無(wú)限執(zhí)行而不主動(dòng)釋放CPU,因?yàn)橐坏└邇?yōu)先級(jí)任務(wù)無(wú)限執(zhí)行了,那么低優(yōu)先級(jí)任務(wù)將永遠(yuǎn)得不到執(zhí)行機(jī)會(huì),這就給人一種死機(jī)的假象。
可能有道友會(huì)疑惑,為什么空閑任務(wù)不需要調(diào)用系統(tǒng)延時(shí)函數(shù)去主動(dòng)釋放CPU的使用權(quán)呢?
那是因?yàn)榭臻e任務(wù)本身優(yōu)先級(jí)就是所有任務(wù)中最低的,如果它主動(dòng)釋放 CPU 了,而其他任務(wù)都處于掛起狀態(tài),那么操作系統(tǒng)又該讓誰(shuí)去執(zhí)行呢?
所以,空閑任務(wù)需要永遠(yuǎn)處于運(yùn)行狀態(tài)
從這個(gè)角度來(lái)說,操作系統(tǒng)主要的功能就是定時(shí)從所有任務(wù)中尋找最高優(yōu)先級(jí)的任務(wù),然后讓該任務(wù)得到運(yùn)行機(jī)會(huì)(使用PendSV 中斷切換到任務(wù)中,模擬中斷切換過程),功能類似于中斷管理器。
而正因?yàn)椴僮飨到y(tǒng)只會(huì)尋找最高優(yōu)先級(jí)的任務(wù)來(lái)執(zhí)行(對(duì)于實(shí)時(shí)操作系統(tǒng)是這樣,有些操作系統(tǒng)可能先來(lái)先處理的策略),所以任務(wù)本身主動(dòng)釋放 CPU 就顯得尤為重要了。

最常用的主動(dòng)釋放 CPU 的函數(shù)就是系統(tǒng)延時(shí)函數(shù)了,調(diào)用這個(gè)函數(shù)后,任務(wù)將延時(shí)一段時(shí)候才回來(lái)繼續(xù)執(zhí)行,而在延時(shí)過程中,操作系統(tǒng)就可以調(diào)用其他任務(wù)執(zhí)行了,正因?yàn)槿绱?,操作系統(tǒng)才顯得高效。

雖然操作系統(tǒng)需要中斷來(lái)剝奪所有任務(wù)的執(zhí)行,從而擁有 CPU 的控制權(quán),但是一般而言,它的優(yōu)先級(jí)卻是所有中斷中最低的,因?yàn)樗膬?yōu)先級(jí)只需要高于任務(wù)即可,如果設(shè)置的更高,那么就會(huì)影響到真正需要高優(yōu)先處理的中斷,因?yàn)镾ystick中斷的處理還是比較頻繁和繁重的,如果設(shè)置的太高,那么在Systick處理時(shí),更低優(yōu)先級(jí)的中斷將無(wú)法處理,這可不是我們想看到的結(jié)果。
而如果設(shè)置成中斷優(yōu)先級(jí)最低的話,既可以剝奪任務(wù)的執(zhí)行,又可以在高優(yōu)先級(jí)中斷來(lái)臨時(shí)及時(shí)處理中斷,讓系統(tǒng)的實(shí)時(shí)得到提高。
與 Systick 配套的中斷,還有一個(gè) PendSV 中斷,這個(gè)優(yōu)先級(jí)一般和 Systick 設(shè)置成一樣,一般而言該中斷的觸發(fā)是由操作系統(tǒng)內(nèi)核主動(dòng)觸發(fā)的(在切換任務(wù)時(shí)軟件觸發(fā)該中斷),而不像 Systick 一樣,定時(shí)被動(dòng)觸發(fā),關(guān)于兩個(gè)中斷更具體描述可參考《Cortex-M3 權(quán)威指南》。

既然中斷可以設(shè)置成優(yōu)先級(jí)一樣的,那么任務(wù)應(yīng)該也可以才對(duì),確實(shí)一般的操作系統(tǒng)都可以設(shè)置相同優(yōu)先級(jí)的任務(wù)(uCOS II 不可以, uCOS III 和 FreeRTOS 、RT-Thread可以),那么操作系統(tǒng)又是如何處理同等優(yōu)先級(jí)的任務(wù)?
一般而言,在任務(wù)初始化時(shí),會(huì)設(shè)置任務(wù)的時(shí)間片,這個(gè)時(shí)間片就是在任務(wù)優(yōu)先級(jí)相同的情況下才會(huì)發(fā)生作用。
比如,任務(wù) 1 設(shè)置 5 個(gè)時(shí)間片(即Systick中斷時(shí)間),任務(wù) 2 設(shè)置 10 個(gè)時(shí)間片,如果兩個(gè)任務(wù)的優(yōu)先級(jí)一樣,那么在 15 個(gè)時(shí)間片內(nèi),任務(wù) 1 將執(zhí)行 5 個(gè)時(shí)間片,之后切換到任務(wù) 2 執(zhí)行10個(gè)時(shí)間片,來(lái)回往復(fù)。
那么比任務(wù)1 和任務(wù) 2 優(yōu)先級(jí)更高的任務(wù)該什么時(shí)候執(zhí)行呢?答案是隨時(shí),即只要高優(yōu)先級(jí)任務(wù)有需要,那么不管任務(wù) 1 和 任務(wù) 2 是否主動(dòng)釋放 CPU,都會(huì)被操作系統(tǒng)強(qiáng)制切換到高優(yōu)先級(jí)任務(wù)中執(zhí)行(由 Systick完成,所以可能會(huì)有一點(diǎn)延時(shí))。
那么優(yōu)先級(jí)比它們低的任務(wù)呢?這個(gè)就靠它們的自覺了,如果它們自覺的主動(dòng)釋放CPU(比如調(diào)用系統(tǒng)延時(shí)函數(shù)),那么低優(yōu)先級(jí)任務(wù)就有執(zhí)行機(jī)會(huì),否則,低優(yōu)先級(jí)任務(wù)將不會(huì)執(zhí)行!
該用一張圖來(lái)說明整個(gè)系統(tǒng)的優(yōu)先級(jí)關(guān)系了:

如何設(shè)置任務(wù)優(yōu)先級(jí)?
很多人設(shè)計(jì)任務(wù)優(yōu)先級(jí)時(shí)都會(huì)從 0、1、2、3 這樣的順序來(lái)設(shè)置,實(shí)際上,這種設(shè)置是不合理的,因?yàn)橐坏┖竺嫘枨笞兓?,要從中加入一個(gè)中間的優(yōu)先級(jí),那么很可能在加入后程序出現(xiàn)問題了。
其實(shí)我們可以從 Cortex-M3 的中斷優(yōu)先級(jí)得到啟發(fā),即空開部分優(yōu)先級(jí)不使用,留待后面擴(kuò)展用,比如設(shè)計(jì)優(yōu)先級(jí)時(shí)可以設(shè)置成 3、5、7、9、11,留出最高的0~2用于可能的高優(yōu)先級(jí)任務(wù),中間空出一個(gè)或兩個(gè)優(yōu)先級(jí)用于擴(kuò)展,這樣一旦后面需要增加其他優(yōu)先級(jí)的任務(wù),會(huì)顯得異常簡(jiǎn)單(可能會(huì)有額外的一點(diǎn)內(nèi)存損耗,但卻是值得的)。

本文授權(quán)轉(zhuǎn)載自公眾號(hào)“魚鷹談單片機(jī)”,作者魚鷹Osprey


-END-




推薦閱讀



【01】深度:嵌入式系統(tǒng)的軟件架構(gòu)設(shè)計(jì)!
【02】使用git管理嵌入式軟件版本
【03】嵌入式軟件測(cè)試的10條秘訣
【04】嵌入式軟件和硬件誰(shuí)更重要?
【05】嵌入式工程師結(jié)合經(jīng)歷聊硬件工程師和軟件工程師哪個(gè)更有前途?


免責(zé)聲明:整理文章為傳播相關(guān)技術(shù),版權(quán)歸原作者所有,如有侵權(quán),請(qǐng)聯(lián)系刪除

免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問題,請(qǐng)聯(lián)系我們,謝謝!

嵌入式ARM

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉