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

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

OpenHarmony內核標準庫與Linux標準庫有何區別

鴻蒙系統HarmonyOS ? 來源:oschina ? 作者:恰飯君 ? 2020-10-21 14:41 ? 次閱讀

本文描述了 OpenHarmony 內核承載的標準庫與 Linux 標準庫之間存在的關鍵差異。

進程

OpenHarmony 用戶態進程優先級只支持靜態優先級且用戶態可配置的優先級范圍為10(最高優先級)-31(最低優先級)。

OpenHarmony 用戶態線程優先級只支持靜態優先級且用戶態可配置的優先級范圍為0(最高優先級)-31(最低優先級)。

OpenHarmony 調度策略支持 SCHED_RR 和 SCHED_FIFO。

sched_yield() 為進程主動放棄 CPU;thrd_yield() 為線程主動放棄 CPU。

內存

與 Linux mmap 的差異

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

其中,參數fd的生命周期實現與Linux glibc存在差異。具體體現在,glibc在成功調用mmap進行映射后,可以立即釋放fd句柄。在OpenHarmony內核中,不允許用戶在映射成功后立即關閉相關fd,只允許在取消映射munmap后再進行fd的close操作。如果用戶不進行fd的close操作,操作系統將在進程退出時對該fd進行回收。

代碼舉例

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);
}

文件系統

**系統目錄:**用戶無法對其進行修改,或是設備掛載。包含/dev,/proc,/app,/bin,/data,/etc,/lib,/system,/usr目錄。

用戶目錄:用戶可以在該目錄下進行文件創建、讀寫,但不能進行設備掛載。用戶目錄指/storage目錄。

除系統目錄與用戶目錄之外,用戶可以自行創建文件夾進行設備的掛載。但是要注意,已掛載的文件夾及其子文件夾不允許重復或者嵌套掛載,非空文件夾不允許掛載。

信號

信號默認行為不支持STOP、CONTINUE、COREDUMP功能。

無法通過信號喚醒正在睡眠狀態(舉例:進程調用sleep函數進入睡眠)的進程。原因:信號機制無喚醒功能,當且僅當進程被CPU調度運行時才能處理信號內容。

進程退出后會發送SIGCHLD給父進程,發送動作無法取消。

信號僅支持1-30號信號,接收方收到多次同一信號,僅執行一次回調函數。

Time

OpenHarmony當前時間精度以tick計算,系統默認10ms/tick。sleep、timeout系列函數時間誤差<=20ms。
編輯:hfy

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10911

    瀏覽量

    213141
  • Linux
    +關注

    關注

    87

    文章

    11351

    瀏覽量

    210498
  • OpenHarmony
    +關注

    關注

    25

    文章

    3753

    瀏覽量

    16661
收藏 人收藏

    評論

    相關推薦

    stm32用hal標準什么區別

    stm32用hal標準什么區別
    發表于 07-20 08:20

    HAL標準的原理區別

    HAL的學習HAL標準的原理區別串口通信實驗包含的文件區別具體代碼
    發表于 07-29 08:48

    標準和HAL區別

    ,程序癱瘓了,所以今天咱們來看看標準和HAL區別,各個他的優點在哪里。
    發表于 08-04 08:22

    CMSIS標準層次關系

    1、CMSIS標準層次關系基于Context系列芯片采用的內核都是相同的,區別主要為核外的片上外設的差異,而這些差異卻導致軟件在同內核
    發表于 08-13 06:37

    STM32標準和HAL哪些不同

    STM32標準和HAL哪些不同?標準和HAL
    發表于 10-21 07:44

    STM32 HAL標準區別有哪些

    STM32的開發方式哪幾種?怎樣去安裝HAL固件呢?STM32 HAL標準
    發表于 10-25 07:49

    HAL標準哪些區別

    什么是HAL標準又是什么?HAL標準
    發表于 10-26 06:54

    請問STM32 HAL標準區別是什么?

    請問STM32 HAL標準區別是什么?
    發表于 11-25 08:43

    STM32F103C8T6標準的USART2是怎樣發送程序的

    STM32F103C8T6標準和STM32F4標準
    發表于 12-13 06:12

    OpenHarmony內核學習[1]--單獨編譯OpenHarmony標準系統內核

    OpenHarmony標準系統類設備(參考內存≥128MiB),OpenHarmony選擇Linux內核作為
    發表于 02-03 10:46

    請問標準外設和HAL區別是什么?

    標準外設和HAL區別是什么?
    發表于 10-23 08:01

    STM32 HAL標準區別

    ??相比較早幾年使用標準開發來講,最近幾年HAL的使用是越來越多,那么我們開發應當使用哪一種呢,本文著重介紹常用的幾種開發方式及相互之間的區別,白貓也好、黑貓也好,抓到耗子就是好貓
    的頭像 發表于 03-22 09:13 ?1.5w次閱讀

    總結移植三方OpenHarmony的經驗

    三方主要是基于標準 Linux 系統的 c/c++ 開源,所以三方的移植工作,首先是在標準
    的頭像 發表于 05-07 15:52 ?6593次閱讀

    STM32 HAL的功能和使用方法 STM32 HAL標準區別

    和可維護性,從而節省開發成本和時間。STM32 HAL是STM32系列芯片的HAL,由ST公司提供和維護。下面將介紹STM32 HAL的功能、使用方法以及與標準
    發表于 08-08 18:21 ?4844次閱讀

    HAL標準區別 HAL與CMSIS的關系

    在嵌入式系統開發中,HAL(硬件抽象層)標準是兩種常用的軟件,它們在功能和使用場景上有所不同。 1. 標準
    的頭像 發表于 12-02 14:02 ?1320次閱讀
    主站蜘蛛池模板: 久久综合五月婷婷 | 国产黄色片网站 | 亚洲午夜顶级嘿嘿嘿影院 | 色婷婷丁香六月 | 蕾丝视频成人★在线观看 | 韩国三级日本三级在线观看 | 久久精品国产大片免费观看 | 思思久久96热在精品不卡 | 琪琪午夜伦埋大全影院 | 久优草 | aa三级动态图无遮无挡 | 亚洲国产综合人成综合网站00 | 手机成人在线视频 | 日本三级日本三级日本三级极 | 国产亚洲一区二区在线观看 | 男女交性视频免费播放视频 | 国内亚州视频在线观看 | 三级电影在线观看视频 | 免费在线观看黄 | 狼色视频在线观免费观看 | 奇米成人影视 | 你懂的国产精品 | 你懂的免费在线观看 | 成人在线视频网址 | 欧美午夜小视频 | 国模于子涵啪啪大胆 | 最近在线观看免费完整视频 | 日本三级黄色 | 中文字幕亚洲综合久久2 | 黄视频日本 | 奇米奇米 | 美女视频一区 | 久久久久免费 | 日本免费黄色网址 | 嫩草影院网站入口 | 色中色在线视频 | 四虎国产精品永久在线播放 | 日本在线观看www | 天天草夜夜骑 | 欧美69xx性欧美 | 嫩草影院国产 |