在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenHarmony內(nèi)核標(biāo)準(zhǔn)庫(kù)與Linux標(biāo)準(zhǔn)庫(kù)有何區(qū)別

鴻蒙系統(tǒng)HarmonyOS ? 來(lái)源:oschina ? 作者:恰飯君 ? 2020-10-21 14:41 ? 次閱讀

本文描述了 OpenHarmony 內(nèi)核承載的標(biāo)準(zhǔn)庫(kù)與 Linux 標(biāo)準(zhǔn)庫(kù)之間存在的關(guān)鍵差異。

進(jìn)程

OpenHarmony 用戶態(tài)進(jìn)程優(yōu)先級(jí)只支持靜態(tài)優(yōu)先級(jí)且用戶態(tài)可配置的優(yōu)先級(jí)范圍為10(最高優(yōu)先級(jí))-31(最低優(yōu)先級(jí))。

OpenHarmony 用戶態(tài)線程優(yōu)先級(jí)只支持靜態(tài)優(yōu)先級(jí)且用戶態(tài)可配置的優(yōu)先級(jí)范圍為0(最高優(yōu)先級(jí))-31(最低優(yōu)先級(jí))。

OpenHarmony 調(diào)度策略支持 SCHED_RR 和 SCHED_FIFO。

sched_yield() 為進(jìn)程主動(dòng)放棄 CPU;thrd_yield() 為線程主動(dòng)放棄 CPU。

內(nèi)存

與 Linux mmap 的差異

mmap接口原型為:void *mmap (void *addr, size_t length, int prot, int flags, int fd, off_t offset)。

其中,參數(shù)fd的生命周期實(shí)現(xiàn)與Linux glibc存在差異。具體體現(xiàn)在,glibc在成功調(diào)用mmap進(jìn)行映射后,可以立即釋放fd句柄。在OpenHarmony內(nèi)核中,不允許用戶在映射成功后立即關(guān)閉相關(guān)fd,只允許在取消映射munmap后再進(jìn)行fd的close操作。如果用戶不進(jìn)行fd的close操作,操作系統(tǒng)將在進(jìn)程退出時(shí)對(duì)該fd進(jìn)行回收。

代碼舉例

Linux目前支持的情況如下:

int main(int argc, char *argv[])
{
    int fd;
    void *addr = NULL;
    ...
    fd = open(argv[1], O_RDONLY);
    if (fd == -1){
        perror("open");
        exit(EXIT_FAILURE);
    }
    addr = mmap(NULL, length, PROT_READ, MAP_PRIVATE, fd, offset);
    if (addr == MAP_FAILED) {
        perror("mmap");
        exit(EXIT_FAILURE);
    }
    close(fd); /* close immediately, OpenHarmony do not support this way */ 
    ...
    exit(EXIT_SUCCESS);
}

OpenHarmony支持的情況如下:

int main(int argc, char *argv[])
{
    int fd;
    void *addr = NULL;
    ...
    fd = open(argv[1], O_RDONLY);
    if (fd == -1){
        perror("open");
        exit(EXIT_FAILURE);
    }
    addr = mmap(NULL, length, PROT_READ, MAP_PRIVATE, fd, offset);
    if (addr == MAP_FAILED) {
        perror("mmap");
        exit(EXIT_FAILURE);
    }
    ...
    munmap(addr, length);
    close(fd); /* close after munmap */
    exit(EXIT_SUCCESS);
}

文件系統(tǒng)

**系統(tǒng)目錄:**用戶無(wú)法對(duì)其進(jìn)行修改,或是設(shè)備掛載。包含/dev,/proc,/app,/bin,/data,/etc,/lib,/system,/usr目錄。

用戶目錄:用戶可以在該目錄下進(jìn)行文件創(chuàng)建、讀寫,但不能進(jìn)行設(shè)備掛載。用戶目錄指/storage目錄。

除系統(tǒng)目錄與用戶目錄之外,用戶可以自行創(chuàng)建文件夾進(jìn)行設(shè)備的掛載。但是要注意,已掛載的文件夾及其子文件夾不允許重復(fù)或者嵌套掛載,非空文件夾不允許掛載。

信號(hào)

信號(hào)默認(rèn)行為不支持STOP、CONTINUE、COREDUMP功能。

無(wú)法通過(guò)信號(hào)喚醒正在睡眠狀態(tài)(舉例:進(jìn)程調(diào)用sleep函數(shù)進(jìn)入睡眠)的進(jìn)程。原因:信號(hào)機(jī)制無(wú)喚醒功能,當(dāng)且僅當(dāng)進(jìn)程被CPU調(diào)度運(yùn)行時(shí)才能處理信號(hào)內(nèi)容。

進(jìn)程退出后會(huì)發(fā)送SIGCHLD給父進(jìn)程,發(fā)送動(dòng)作無(wú)法取消。

信號(hào)僅支持1-30號(hào)信號(hào),接收方收到多次同一信號(hào),僅執(zhí)行一次回調(diào)函數(shù)。

Time

OpenHarmony當(dāng)前時(shí)間精度以tick計(jì)算,系統(tǒng)默認(rèn)10ms/tick。sleep、timeout系列函數(shù)時(shí)間誤差<=20ms。
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11051

    瀏覽量

    216175
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11469

    瀏覽量

    212930
  • OpenHarmony
    +關(guān)注

    關(guān)注

    28

    文章

    3838

    瀏覽量

    18223
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    stm32用hal庫(kù)標(biāo)準(zhǔn)庫(kù)什么區(qū)別

    stm32用hal庫(kù)標(biāo)準(zhǔn)庫(kù)什么區(qū)別
    發(fā)表于 07-20 08:20

    HAL庫(kù)標(biāo)準(zhǔn)庫(kù)的原理區(qū)別

    HAL庫(kù)的學(xué)習(xí)HAL庫(kù)標(biāo)準(zhǔn)庫(kù)的原理區(qū)別串口通信實(shí)驗(yàn)包含的文件區(qū)別具體代碼
    發(fā)表于 07-29 08:48

    標(biāo)準(zhǔn)庫(kù)和HAL庫(kù)區(qū)別

    ,程序癱瘓了,所以今天咱們來(lái)看看標(biāo)準(zhǔn)庫(kù)和HAL庫(kù)區(qū)別,各個(gè)庫(kù)他的優(yōu)點(diǎn)在哪里。
    發(fā)表于 08-04 08:22

    CMSIS標(biāo)準(zhǔn)庫(kù)層次關(guān)系

    1、CMSIS標(biāo)準(zhǔn)庫(kù)層次關(guān)系基于Context系列芯片采用的內(nèi)核都是相同的,區(qū)別主要為核外的片上外設(shè)的差異,而這些差異卻導(dǎo)致軟件在同內(nèi)核
    發(fā)表于 08-13 06:37

    STM32標(biāo)準(zhǔn)庫(kù)和HAL庫(kù)哪些不同

    STM32標(biāo)準(zhǔn)庫(kù)和HAL庫(kù)哪些不同?標(biāo)準(zhǔn)庫(kù)和HAL庫(kù)
    發(fā)表于 10-21 07:44

    STM32 HAL庫(kù)標(biāo)準(zhǔn)庫(kù)區(qū)別有哪些

    STM32的開發(fā)方式哪幾種?怎樣去安裝HAL庫(kù)固件庫(kù)呢?STM32 HAL庫(kù)標(biāo)準(zhǔn)庫(kù)
    發(fā)表于 10-25 07:49

    HAL庫(kù)標(biāo)準(zhǔn)庫(kù)哪些區(qū)別

    什么是HAL庫(kù)標(biāo)準(zhǔn)庫(kù)又是什么?HAL庫(kù)標(biāo)準(zhǔn)庫(kù)
    發(fā)表于 10-26 06:54

    請(qǐng)問(wèn)STM32 HAL庫(kù)標(biāo)準(zhǔn)庫(kù)區(qū)別是什么?

    請(qǐng)問(wèn)STM32 HAL庫(kù)標(biāo)準(zhǔn)庫(kù)區(qū)別是什么?
    發(fā)表于 11-25 08:43

    STM32F103C8T6標(biāo)準(zhǔn)庫(kù)的USART2是怎樣發(fā)送程序的

    STM32F103C8T6標(biāo)準(zhǔn)庫(kù)和STM32F4標(biāo)準(zhǔn)庫(kù)區(qū)
    發(fā)表于 12-13 06:12

    OpenHarmony內(nèi)核學(xué)習(xí)[1]--單獨(dú)編譯OpenHarmony標(biāo)準(zhǔn)系統(tǒng)內(nèi)核

    OpenHarmony標(biāo)準(zhǔn)系統(tǒng)類設(shè)備(參考內(nèi)存≥128MiB),OpenHarmony選擇Linux內(nèi)核作為
    發(fā)表于 02-03 10:46

    請(qǐng)問(wèn)標(biāo)準(zhǔn)外設(shè)庫(kù)和HAL庫(kù)區(qū)別是什么?

    標(biāo)準(zhǔn)外設(shè)庫(kù)和HAL庫(kù)區(qū)別是什么?
    發(fā)表于 10-23 08:01

    STM32 HAL庫(kù)標(biāo)準(zhǔn)庫(kù)區(qū)別

    ??相比較早幾年使用標(biāo)準(zhǔn)庫(kù)開發(fā)來(lái)講,最近幾年HAL庫(kù)的使用是越來(lái)越多,那么我們開發(fā)應(yīng)當(dāng)使用哪一種呢,本文著重介紹常用的幾種開發(fā)方式及相互之間的區(qū)別,白貓也好、黑貓也好,抓到耗子就是好貓
    的頭像 發(fā)表于 03-22 09:13 ?1.6w次閱讀

    總結(jié)移植三方庫(kù)OpenHarmony的經(jīng)驗(yàn)

    三方庫(kù)主要是基于標(biāo)準(zhǔn) Linux 系統(tǒng)的 c/c++ 開源庫(kù),所以三方庫(kù)的移植工作,首先是在標(biāo)準(zhǔn)
    的頭像 發(fā)表于 05-07 15:52 ?7016次閱讀

    STM32 HAL庫(kù)的功能和使用方法 STM32 HAL庫(kù)標(biāo)準(zhǔn)庫(kù)區(qū)別

    和可維護(hù)性,從而節(jié)省開發(fā)成本和時(shí)間。STM32 HAL庫(kù)是STM32系列芯片的HAL庫(kù),由ST公司提供和維護(hù)。下面將介紹STM32 HAL庫(kù)的功能、使用方法以及與標(biāo)準(zhǔn)
    發(fā)表于 08-08 18:21 ?6153次閱讀

    HAL庫(kù)標(biāo)準(zhǔn)庫(kù)區(qū)別 HAL庫(kù)與CMSIS的關(guān)系

    在嵌入式系統(tǒng)開發(fā)中,HAL(硬件抽象層)庫(kù)標(biāo)準(zhǔn)庫(kù)是兩種常用的軟件庫(kù),它們?cè)诠δ芎褪褂脠?chǎng)景上有所不同。 1. 標(biāo)準(zhǔn)
    的頭像 發(fā)表于 12-02 14:02 ?3030次閱讀
    主站蜘蛛池模板: 五月婷婷视频在线观看 | 激情综合五月天丁香婷婷 | 爱搞逼综合 | 国产热re99久久6国产精品 | 欧美色图亚洲综合 | 美日毛片| 国产免费一级在线观看 | 视色4se视频在线观看 | 嫩草影院久久国产精品 | 亚洲 自拍 欧美 综合 | bbbb毛片免费看 | 欧美黑人三级 | 色黄网站 | 色吧色吧色吧网 | 年轻人影院www你懂的 | 中文字幕天堂在线 | 午夜看片a福利在线 | www.四虎影院在线观看 | 国产特级| 91av视频免费在线观看 | 中文字幕在线播放不卡 | 色视频在线播放 | 天天干天天操天天爱 | 亚洲啪啪看看 | 国产精品免费视频拍拍拍 | 天天操天天射天天 | 四虎影视在线影院4hu | 亚洲色图狠狠干 | 亚洲91精品| 羞羞影院男女午夜爽爽影视 | 性欧美长视频 | 亚洲天天做日日做天天看2018 | 5x性区m免费毛片视频看看 | 久久久久性 | 国产91丝袜在线播放九色 | 天天综合色天天桴色 | 日本三级成人午夜视频网 | 黄色在线观看网站 | 欧美一区二区三区综合色视频 | 中文字幕一区二区精品区 | 色婷婷亚洲|