色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

Linux內(nèi)核延時函數(shù)接口

麥辣雞腿堡 ? 來源:嵌入式Linux充電站 ? 作者:Vincent ? 2023-10-04 15:40 ? 次閱讀

內(nèi)核延時函數(shù)接口

延時的函數(shù)有delaysleep兩種類型:

delay接口

void ndelay(unsigned long nsecs);//納秒延時
void udelay(unsigned long usecs);//微妙延時
void mdelay(unsigned long msecs);//毫秒延時

sleep接口

void msleep(unsigned int msecs);//毫秒級延時
long msleep_interruptible(unsigned int msecs);//毫秒級延時,可被信號打斷
void ssleep(unsigned int seconds);//秒級延時

delay和sleep的區(qū)別

delay型延時:忙等待,占用CPU資源,延遲過程無法進(jìn)行其他任務(wù)。

sleep型延時:休眠,不占用CPU資源,其它模塊此時可以使用CPU資源。

低分辨率定時器

jiffies和HZ

jiffies:全局變量,表示 系統(tǒng)啟動以來產(chǎn)生的節(jié)拍數(shù) 。每產(chǎn)生一次中斷,jiffies自動加一。

HZ:赫茲,也叫 節(jié)拍率 ,表示 每秒種產(chǎn)生多少次中斷

例如:HZ200,代表每秒產(chǎn)生200次中斷,那2秒鐘jiffies的值就應(yīng)該是400。因此系統(tǒng)的運(yùn)行時間可以用jiffies/HZ表示。

一秒鐘:jiffies + HZ表示一秒鐘

原因:內(nèi)核中統(tǒng)計時間是通過jiffies,因此要比較時間或者定時也是通過jiffies。

例如程序運(yùn)行一秒鐘,內(nèi)核如何知道運(yùn)行了一秒?答案是運(yùn)行一秒后的jiffies值和運(yùn)行前的jiffies值進(jìn)行比較,如果相差為一個HZ,則代表一秒鐘。jiffies+HZ其實就是一秒后jiffies的值,所以jiffies+HZ可以間接表示一秒鐘。

定時2秒:jiffies + 2*HZ。以此類推

獲取當(dāng)前的jiffies值,可以用get_jiffies_64()函數(shù)。

將時間轉(zhuǎn)為對應(yīng)的jiffies值,可以用msecs_to_jiffies()等函數(shù),例如msecs_to_jiffies(1000)代表1秒,函數(shù)返回值其實就是HZ。

相關(guān)接口

#include< linux/timer.h >

struct timer_list { 
    struct list_head list;  
    unsigned long expires;  //定時器到期時間,傳入的是jiffies值
    unsigned long data;  //作為參數(shù)被傳入定時器處理函數(shù)
    void (*function)(unsigned long);
};
void init_timer(struct timer_list * timer);//初始化定時器
void add_timer(struct timer_list * timer);//添加一個定時器
int mod_timer(struct timer_list *timer, unsigned long expires);//修改定時器的定時時間expires
int del_timer(struct timer_list * timer);//刪除定時器
unsigned int jiffies_to_msecs (const unsigned long j);//將jiffies轉(zhuǎn)為對應(yīng)的毫秒值
unsigned int jiffies_to_usecs (const unsigned long j);//將jiffies轉(zhuǎn)為對應(yīng)的微秒值
unsigned long msecs_to_jiffies (const unsigned int m);//將毫秒值轉(zhuǎn)為對應(yīng)的jiffies
unsigned long usecs_to_jiffies (const unsigned int u);//將微秒值轉(zhuǎn)為對應(yīng)的jiffies
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1382

    瀏覽量

    40372
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8691

    瀏覽量

    151683
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11342

    瀏覽量

    210136
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4345

    瀏覽量

    62870
收藏 人收藏

    評論

    相關(guān)推薦

    Linux內(nèi)核學(xué)習(xí)筆記:printk調(diào)試

    很多內(nèi)核開發(fā)者喜歡的調(diào)試工具是printk,在Linux內(nèi)核中,使用printk()函數(shù)來打印信息,它與C庫的printf()函數(shù)類似。
    發(fā)表于 06-01 15:14 ?1198次閱讀

    Linux內(nèi)核教程

    本章學(xué)習(xí)目標(biāo)掌握LINUX內(nèi)核版本的含義理解并掌握進(jìn)程的概念掌握管道的概念及實現(xiàn)了解內(nèi)核的數(shù)據(jù)結(jié)構(gòu)了解LINUX內(nèi)核的算法掌握
    發(fā)表于 04-10 16:59 ?0次下載

    linux內(nèi)核kernel-api

    linux內(nèi)核kernel-api,不知道從哪兒找的了,但是你如果想要做內(nèi)核編程,這是一部api函數(shù)詳盡的工具書?。?!五星推薦
    發(fā)表于 10-30 17:16 ?19次下載

    Linux 內(nèi)核數(shù)據(jù)結(jié)構(gòu):位圖(Bitmap)

    除了各種鏈?zhǔn)胶蜆湫螖?shù)據(jù)結(jié)構(gòu),Linux內(nèi)核還提供了位圖接口。位圖在Linux內(nèi)核中大量使用。下面的源代碼文件包含這些結(jié)構(gòu)的通用
    發(fā)表于 05-14 17:24 ?3499次閱讀

    嵌入式Linux內(nèi)核的驅(qū)動程序開發(fā)是怎樣的

    設(shè)備驅(qū)動程序是linux內(nèi)核的一部分,是操作系統(tǒng)內(nèi)核和機(jī)器硬件之間的接口,它由一組函數(shù)和一些私有數(shù)據(jù)組成,是連接應(yīng)用程序與具體硬件的橋梁。
    發(fā)表于 11-06 11:33 ?1528次閱讀
    嵌入式<b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>的驅(qū)動程序開發(fā)是怎樣的

    最硬核的Linux內(nèi)核文章

    內(nèi)核。 擁有超過1300萬行的代碼,Linux內(nèi)核是世界上最大的開源項目之一,但是內(nèi)核是什么,它用于什么? 02 什么是內(nèi)核
    的頭像 發(fā)表于 10-19 17:46 ?2145次閱讀
    最硬核的<b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>文章

    快速理解什么是Linux內(nèi)核以及Linux內(nèi)核的內(nèi)容

    01 前言 本文主要講解什么是Linux內(nèi)核,以及通過多張圖片展示Linux內(nèi)核的作用與功能,以便于讀者能快速理解什么是Linux
    的頭像 發(fā)表于 10-21 12:02 ?4322次閱讀
    快速理解什么是<b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>以及<b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>的內(nèi)容

    Linux內(nèi)核GPIO操作函數(shù)的詳解分析

    本文檔的主要內(nèi)容詳細(xì)介紹的是Linux內(nèi)核GPIO操作函數(shù)的詳解分析免費下載。
    發(fā)表于 01-22 16:58 ?28次下載

    Linux內(nèi)核熱補(bǔ)丁安全隱患的探索

    Linux 內(nèi)核熱補(bǔ)丁可以修復(fù)正在運(yùn)行的 linux 內(nèi)核,是一種維持線上穩(wěn)定性不可缺少的措施,現(xiàn)在比較常見的比如 kpatch 和 livepatch。
    的頭像 發(fā)表于 10-11 11:54 ?1773次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>熱補(bǔ)丁安全隱患的探索

    C語言 | 延時函數(shù)(Delay)

    github:https://github.com/MichaelBeechanCSDN:https://blog.csdn.net/u011344545“nop”函數(shù)對于延時很短,要求在us級
    發(fā)表于 01-13 13:38 ?14次下載
    C語言 | <b class='flag-5'>延時</b><b class='flag-5'>函數(shù)</b>(Delay)

    Linux內(nèi)核系統(tǒng)調(diào)用概述及實現(xiàn)原理

    本文介紹了系統(tǒng)調(diào)用的一些實現(xiàn)細(xì)節(jié)。首先分析了系統(tǒng)調(diào)用的意義,它們與庫函數(shù)和應(yīng)用程序接口(API)有怎樣的關(guān)系。然后,我們考察了Linux內(nèi)核如何實現(xiàn)系統(tǒng)調(diào)用,以及執(zhí)行系統(tǒng)調(diào)用的連鎖反應(yīng)
    的頭像 發(fā)表于 05-14 14:11 ?2251次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>系統(tǒng)調(diào)用概述及實現(xiàn)原理

    Linux內(nèi)核模塊參數(shù)傳遞與sysfs文件系統(tǒng)

    Linux應(yīng)用開發(fā)中,為使應(yīng)用程序更加靈活地執(zhí)行用戶的預(yù)期功能,我們有時候會通過命令行傳遞一些參數(shù)到main函數(shù)中,使得代碼邏輯可以依據(jù)參數(shù)執(zhí)行不同的任務(wù)。同樣,Linux內(nèi)核也提供了
    發(fā)表于 06-07 16:23 ?2184次閱讀

    Linux Regmap 操作函數(shù)

    Regmap 操作函數(shù) 1、Regmap 申請與初始化 regmap 支持多種物理總線,比如 I2C 和 SPI,我們需要根據(jù)所使用的接口來選擇合適的 regmap 初始化函數(shù)。Linux
    的頭像 發(fā)表于 07-06 17:31 ?3073次閱讀

    萬千設(shè)備,linux內(nèi)核如何知道?

    linux內(nèi)核設(shè)備的注冊由device_register()函數(shù)完成,這個函數(shù)linux設(shè)備驅(qū)動模型的核心
    的頭像 發(fā)表于 07-12 08:52 ?887次閱讀
    萬千設(shè)備,<b class='flag-5'>linux</b><b class='flag-5'>內(nèi)核</b>如何知道?

    Linux內(nèi)核如何使用結(jié)構(gòu)體和函數(shù)指針?

    我將結(jié)合具體的Linux內(nèi)核驅(qū)動框架代碼來展示Linux內(nèi)核如何使用結(jié)構(gòu)體和函數(shù)指針。
    的頭像 發(fā)表于 09-06 14:17 ?1062次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>如何使用結(jié)構(gòu)體和<b class='flag-5'>函數(shù)</b>指針?
    主站蜘蛛池模板: 在线高清视频不卡无码 | 日本高清二区 | 日韩高清在线亚洲专区 | 日本内射精品一区二区视频 | 古代荡乳尤物H妓女调教 | 免费毛片a在线观看67194 | 男人吃奶摸下弄进去好爽 | 偷拍亚洲制服另类无码专区 | 野花视频在线观看免费最新动漫 | 精品国产免费第一区二区 | 国产一卡在线观看完整版 | 日韩精品卡1卡2三卡四卡乱码 | 亚洲欧美人成视频在线 | 超碰视频在线 | 大地影院在线播放 | 久久中文字幕乱码免费 | 人妻满熟妇AV无码区国产 | www精品一区二区三区四区 | 特级淫片大乳女子高清视频 | 国产人妻精品无码AV在线五十路 | 佐山爱痴汉theav | 国产精品嫩草影院在线观看免费 | 熟妇无码乱子成人精品 | 成年无码av片 | 男人网站在线 | 亚洲精品视频免费看 | 久久久久久久久人体 | 床伴在线观看免费高清完整泰剧第四集 | 蜜臀AV浪潮99国产麻豆 | 看80后操| 午夜福利理论片在线播放 | 天美传媒果冻传媒入口视频 | 久久婷婷五月综合色情 | 色欲午夜无码久久久久久 | 色偷偷在线视频 | 亚洲欧美一区二区三区导航 | 久久这里只有精品视频e | 国产偷抇久久精品A片蜜臀A | 欧美一级久久久久久久久大 | 精品国产乱码久久久人妻 | 三级视频网站 |