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

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

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

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

Linux內(nèi)核中有三個watchdog

Linux閱碼場 ? 來源:Linuxer ? 作者:Linuxer ? 2021-01-14 09:15 ? 次閱讀

Linux內(nèi)核中有三個watchdog(看門狗),它們都需要被悉心的喂養(yǎng)照料,分別是:

1. /dev/watchdog

2.softlockup檢測機制

3.hardlockup檢測機制

首先看 1./dev/watchdog,此看門狗該怎樣喂養(yǎng)呢,linux內(nèi)核中有一段樣例代碼:

pIYBAF__m46AJDUrAABmxI1OPdA311.png

此例子中,每隔10秒鐘就會向“/dev/watchdog"文件寫入0, 這就是喂狗過程,看到這個樣例,好像不太能感受到這個看門狗大的用處,但是放在實際工程中,用處太大了,舉個例子:

某國中央銀行在一臺有 內(nèi)存4T, 320個cpu核 的Linux服務(wù)器上跑一個數(shù)據(jù)庫程序,數(shù)據(jù)庫上存有他本國所有人民的銀行賬號信息,當(dāng)此數(shù)據(jù)庫程序在運行過程中,發(fā)生了IO讀寫錯誤,或者程序bug, 一下卡住了,那么他本國人民就都不能存錢取錢轉(zhuǎn)賬了,整個國民經(jīng)濟瞬間癱瘓。

此時想想看,Linux系統(tǒng)有沒有什么機制來解決這種問題了,這時候“/dev/watchdog" 來了,

這個時候只需要在數(shù)據(jù)庫程序中加上類似上面的樣例程序,每隔10s中就去喂狗一次,

只要數(shù)據(jù)庫程序卡住,卡住之后就不能喂狗了,等到比如默認(rèn)60s以后,這只狗就罷工了,立馬會默認(rèn)觸發(fā)服務(wù)器重啟。

服務(wù)器重啟會重新加載數(shù)據(jù)庫程序, 或者服務(wù)器在重啟過程中,由于服務(wù)器與它所在的服務(wù)器集群失聯(lián),從而觸發(fā)集群中的分腦檢測,把數(shù)據(jù)庫程序挪到集群中其它設(shè)備上跑,此時就減少了很多損失.所以這只狗/dev/watchdog 用處太大了。

再來看下它的實現(xiàn)原理:

pIYBAF__m6qAYrz7AAAcv44TA2U118.png

看到系統(tǒng)中有個內(nèi)核線程watchdogd, 和兩個字符文件:/dev/watchdog和/dev/watchdog0

其中watchdogd實時調(diào)度類線程負(fù)責(zé)具體執(zhí)行喂狗,/dev/watchdog是內(nèi)核提供給用戶層的通用操作接口文件,用來開啟這只狗,喂狗,查詢狀態(tài)等。/dev/watchdog0 是具體的狗子實現(xiàn),可以基于具體的物理設(shè)備實現(xiàn),或者是softdog內(nèi)核模塊以軟件的方式(具體使用方法:modprobe softdog)模擬硬件實現(xiàn)。

來看下softdog內(nèi)核模塊怎樣模擬硬件實現(xiàn)這個功能:

pIYBAF__m8KAShblAABEmHNhhos553.png

從代碼實現(xiàn)來看,很好理解,在開啟看門狗(open "/dev/watchdog")之后,默認(rèn)60s以后就會觸發(fā)系統(tǒng)重啟,在60s倒計時過程中,只有喂狗(softdog_ping)一次,它就又會恢復(fù)到60s以后才會觸發(fā)系統(tǒng)重啟,所以只要一直喂狗,emergency_restart()就不會執(zhí)行,系統(tǒng)就不會重啟。

再來看下2.softlockup檢測機制 和 3.hardlockup檢測機制。

softlockup檢測機制的喂狗方式是,每cpu上的hrtimer會喚醒一個migration/N內(nèi)核線程,migration/N每次被喚醒之后都會對某個時間戳進(jìn)行重置。

hardlockup檢測機制的喂狗方式是,hrtimer每次執(zhí)行時都會對一個變量進(jìn)行加一。

關(guān)于softlockup和hardlockup檢測機制的具體原理實現(xiàn)和應(yīng)用場景,我最近發(fā)布了一個視頻“Linux常見鎖和lockup檢查機制"包含了從實現(xiàn)原理(linux內(nèi)核代碼層)和原理驗證(使用ftrace調(diào)試手段)、樣例代碼、動手模擬實驗,可以全方位理解softlockup/hardlockup.

責(zé)任編輯:lq

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

    關(guān)注

    87

    文章

    11469

    瀏覽量

    212899
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4891

    瀏覽量

    70306
  • Watchdog
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    9573

原文標(biāo)題:總結(jié)Linux內(nèi)核中watchdog

文章出處:【微信號:LinuxDev,微信公眾號:Linux閱碼場】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

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

    Linux系統(tǒng)中最重要的三個命令

    Linux劍客是Linux系統(tǒng)中最重要的三個命令,它們以其強大的功能和廣泛的應(yīng)用場景而聞名。這三個工具的組合使用幾乎可以完美應(yīng)對Shell
    的頭像 發(fā)表于 03-03 10:37 ?368次閱讀

    飛凌嵌入式ElfBoard ELF 1板卡-Linux內(nèi)核移植之內(nèi)核簡介

    學(xué)到本章節(jié),大家應(yīng)該對Linux操作系統(tǒng)都有了一定的了解,但可能還不知道我們拿到手的內(nèi)核源碼都經(jīng)歷了什么。linux有一龐大的開源社區(qū),每個人都可以向開源社區(qū)提交代碼。由于
    發(fā)表于 12-13 09:03

    linux內(nèi)核中通用HID觸摸驅(qū)動

    linux內(nèi)核中,為HID觸摸面板實現(xiàn)了一通用的驅(qū)動程序,位于/drivers/hid/hid-multitouch.c文件中。hid觸摸驅(qū)動是以struct hid_driver實現(xiàn),首先定義一
    的頭像 發(fā)表于 10-29 10:55 ?2065次閱讀
    <b class='flag-5'>linux</b><b class='flag-5'>內(nèi)核</b>中通用HID觸摸驅(qū)動

    所有Window Watchdog Supervisors

    電子發(fā)燒友網(wǎng)站提供《所有Window Watchdog Supervisors.pdf》資料免費下載
    發(fā)表于 10-10 10:37 ?0次下載
    所有Window <b class='flag-5'>Watchdog</b> Supervisors

    雙向晶閘管的三個電極分別是什么作用

    雙向晶閘管(Bidirectional Thyristor),也稱為雙向可控硅或雙向可控整流器,是一種四層端半導(dǎo)體器件,具有兩方向的導(dǎo)電能力。它在電力電子領(lǐng)域中有著廣泛的應(yīng)用,如交流/直流
    的頭像 發(fā)表于 10-08 09:28 ?2045次閱讀

    詳解linux內(nèi)核的uevent機制

    linux內(nèi)核中,uevent機制是一種內(nèi)核和用戶空間通信的機制,用于通知用戶空間應(yīng)用程序各種硬件更改或其他事件,比如插入或移除硬件設(shè)備(如USB驅(qū)動器或網(wǎng)絡(luò)接口)。uevent表示“用戶空間
    的頭像 發(fā)表于 09-29 17:01 ?1720次閱讀

    linux驅(qū)動程序如何加載進(jìn)內(nèi)核

    Linux系統(tǒng)中,驅(qū)動程序是內(nèi)核與硬件設(shè)備之間的橋梁。它們允許內(nèi)核與硬件設(shè)備進(jìn)行通信,從而實現(xiàn)對硬件設(shè)備的控制和管理。 驅(qū)動程序的編寫 驅(qū)動程序的編寫是Linux驅(qū)動開發(fā)的基礎(chǔ)。在編
    的頭像 發(fā)表于 08-30 15:02 ?999次閱讀

    基本理想電路元件的三個特征是什么

    基本理想電路元件是構(gòu)成電路的基本單元,它們具有三個基本特征:電壓-電流關(guān)系、能量轉(zhuǎn)換和電路參數(shù)。以下是對這三個特征的分析: 電壓-電流關(guān)系 理想電路元件的電壓-電流關(guān)系是其最基本的特征之一。這種關(guān)系
    的頭像 發(fā)表于 08-25 09:38 ?2224次閱讀

    Linux內(nèi)核測試技術(shù)

    Linux 內(nèi)核Linux操作系統(tǒng)的核心部分,負(fù)責(zé)管理硬件資源和提供系統(tǒng)調(diào)用接口。隨著 Linux 內(nèi)核的不斷發(fā)展和更新,其復(fù)雜性和代碼規(guī)
    的頭像 發(fā)表于 08-13 13:42 ?937次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>測試技術(shù)

    對稱相電壓的特點是哪三個方面

    對稱相電壓是電力系統(tǒng)中常見的一種電壓形式,它具有三個相位,每個相位之間的相位差為120度。對稱相電壓在工業(yè)生產(chǎn)和日常生活中有著廣泛的應(yīng)用,如電動機、變壓器、發(fā)電機等。本文將從
    的頭像 發(fā)表于 08-12 18:18 ?2845次閱讀

    Linux內(nèi)核中的頁面分配機制

    Linux內(nèi)核中是如何分配出頁面的,如果我們站在CPU的角度去看這個問題,CPU能分配出來的頁面是以物理頁面為單位的。也就是我們計算機中常講的分頁機制。本文就看下Linux內(nèi)核是如何管
    的頭像 發(fā)表于 08-07 15:51 ?574次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>內(nèi)核</b>中的頁面分配機制

    簡述極管的三個工作區(qū)域

    極管的三個區(qū)域,通常指的是其在不同工作條件下的狀態(tài)區(qū)域,即截止區(qū)、放大區(qū)和飽和區(qū)。這三個區(qū)域定義了極管在不同電壓和電流條件下的行為特性,對于理解和設(shè)計電子電路至關(guān)重要。
    的頭像 發(fā)表于 07-29 10:50 ?5945次閱讀

    可調(diào)變阻器三個引腳怎么區(qū)分

    可調(diào)變阻器,也稱為電位器或可變電阻器,是一種可以調(diào)節(jié)電阻值的電子元件。它廣泛應(yīng)用于各種電子設(shè)備中,如音頻設(shè)備、電源管理、電機控制等。可調(diào)變阻器有三個引腳,分別是固定端、滑動端和可調(diào)端。這三個引腳
    的頭像 發(fā)表于 07-24 11:12 ?2355次閱讀

    可調(diào)電阻三個腳各是什么

    可調(diào)電阻器,也稱為電位器或可變電阻器,是一種可調(diào)節(jié)電阻值的電子元件。它通常由三個腳(引腳)組成,分別是固定腳、滑動腳和可調(diào)腳。以下是對這三個腳的介紹: 固定腳(Fixed Terminal): 固定
    的頭像 發(fā)表于 07-24 11:06 ?3796次閱讀

    歡創(chuàng)播報 華為宣布鴻蒙內(nèi)核已超越Linux內(nèi)核

    1 華為宣布鴻蒙內(nèi)核已超越Linux內(nèi)核 ? 6月21日,在華為開發(fā)者大會上, HarmonyOS NEXT(鴻蒙NEXT)——真正獨立于安卓和iOS的鴻蒙操作系統(tǒng),正式登場。這是HarmonyOS
    的頭像 發(fā)表于 06-27 11:30 ?1174次閱讀
    主站蜘蛛池模板: 天天操天天干天天操 | 岬奈奈美在线 国产一区 | 久久精品综合 | 在线观看免费视频网站色 | 五月婷婷丁香在线视频 | 日本视频不卡 | 永久视频在线观看 | 久久澡人人澡狠狠澡 | 亚洲卡一卡2卡三卡4卡国色 | 香蕉久久夜色精品国产小说 | 77米奇影院| 日本一区二区三区视频在线观看 | 亚洲人成人网毛片在线播放 | 特黄特色的大片观看免费视频 | 亚洲欧美日韩一区 | 另类视频色综合 | 免费色视频在线观看 | 亚洲男人的性天堂 | 操他射他影院 | 国产精品黄网站免费观看 | 97影院理论片手机在线观看 | 久久青草91免费观看 | 男人视频在线观看 | 久久婷婷是五月综合色狠狠 | 欧美四色 | 六月婷婷激情 | 天天综合欧美 | 亚洲免费福利视频 | avbobo官网在线入口 | 最近高清在线视频观看免费 | 免费人成黄页在线观看1024 | 亚洲视频天天射 | 国产精品免费久久久久影院 | 免费大片黄国产在线观看 | 国产真实灌醉美女疯狂弄 | 伊人网大| ts在线视频 | 色聚网久久综合 | 嫩草影院在线入口 | 天天做天天爱夜夜爽女人爽宅 | 狠狠躁夜夜躁人人爽天天段 |