吴忠躺衫网络科技有限公司

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

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

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

Linux驅(qū)動(dòng)proc新接口介紹

麥辣雞腿堡 ? 來(lái)源:嵌入式Linux充電站 ? 作者:Vincent ? 2023-09-27 11:29 ? 次閱讀

proc新接口

注意,在較新版本的內(nèi)核中,procfs的函數(shù)接口有所變化。

系統(tǒng)內(nèi)核版本
Linux5.10.111

在驅(qū)動(dòng)中添加以下代碼:

#include < linux/kernel.h >
#include < linux/module.h >
#include < linux/init.h >
#include < linux/proc_fs.h >
#include < linux/seq_file.h >

struct proc_dir_entry *my_proc_entry;

static int proc_clk_show(struct seq_file *m, void *v)
{
 seq_printf(m,
    "pll0: %lu Mhzn"
    "pll1: %lu Mhzn"
    "pll2: %lu Mhzn",
    100, 200, 300);
 return 0;
}

static int clk_info_open(struct inode *inode, struct file *filp)
{
 return single_open(filp, proc_clk_show, NULL);
}

static const struct proc_ops clk_stat_proc_fops = {
 .proc_open = clk_info_open,
 .proc_read =  seq_read,
 .proc_lseek = seq_lseek,
 .proc_release = seq_release,
};

static int __init my_module_init(void)
{
   my_proc_entry = proc_create("clk", 0, NULL, &clk_stat_proc_fops);

    return 0;
}

static void __exit my_module_exit(void)
{
   proc_remove(my_proc_entry);
}

module_init(my_module_init);
module_exit(my_module_exit);
MODULE_LICENSE("GPL");

新的proc接口中,將原來(lái)的struct file_operations換成了struct proc_ops,其中成員函數(shù)也添加了對(duì)應(yīng)的前綴proc,但本質(zhì)還是一樣的,只是換了名字,更加規(guī)范了一些。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1382

    瀏覽量

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

    關(guān)注

    33

    文章

    8691

    瀏覽量

    151920
  • 驅(qū)動(dòng)
    +關(guān)注

    關(guān)注

    12

    文章

    1851

    瀏覽量

    85643
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11345

    瀏覽量

    210399
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Linux驅(qū)動(dòng)中創(chuàng)建procfs接口的方法

    上篇介紹Linux驅(qū)動(dòng)中sysfs接口的創(chuàng)建,今天介紹procfs接口的創(chuàng)建。
    發(fā)表于 05-31 16:48 ?775次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>驅(qū)動(dòng)</b>中創(chuàng)建procfs<b class='flag-5'>接口</b>的方法

    Linux平臺(tái)/proc虛擬文件系統(tǒng)詳解

    Linux 內(nèi)核提供了一種通過(guò) /proc 文件系統(tǒng),在運(yùn)行時(shí)訪問(wèn)內(nèi)核內(nèi)部數(shù)據(jù)結(jié)構(gòu)、改變內(nèi)核設(shè)置的機(jī)制。proc文件系統(tǒng)是一個(gè)偽文件系統(tǒng)(即虛擬文件系統(tǒng)),它只存在內(nèi)存當(dāng)中,而不占用外存空間。它以文件系統(tǒng)的方式為訪問(wèn)系統(tǒng)內(nèi)核數(shù)據(jù)
    發(fā)表于 06-08 10:49 ?1579次閱讀
    <b class='flag-5'>Linux</b>平臺(tái)/<b class='flag-5'>proc</b>虛擬文件系統(tǒng)詳解

    Linux proc文件系統(tǒng)詳解

    上一篇:《文件系統(tǒng)有很多,但這幾個(gè)最為重要》介紹了procfs(進(jìn)程文件系統(tǒng)的縮寫(xiě)),包含一個(gè)偽文件系統(tǒng)(啟動(dòng)時(shí)動(dòng)態(tài)生成的文件系統(tǒng)),用于通過(guò)內(nèi)核訪問(wèn)進(jìn)程信息。這個(gè)文件系統(tǒng)通常被掛載到 /proc 目錄, /proc中不僅僅放了
    發(fā)表于 06-15 11:42 ?1129次閱讀

    USB接口驅(qū)動(dòng)的移植介紹

    一、介紹目前5G網(wǎng)絡(luò)比較火,這里介紹一款5g模組的驅(qū)動(dòng)的移植,實(shí)現(xiàn)5G上網(wǎng),目前有很多5G模組,比如移遠(yuǎn)、simcom、華為等等接口類型有u***和PCIE,這里先
    發(fā)表于 12-20 07:32

    Linux內(nèi)核空間設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā)

    本文詳細(xì)介紹Linux平臺(tái)下內(nèi)核空間設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā)。在比較proc和dev兩種文件系統(tǒng)的基礎(chǔ)上,分別以PCI設(shè)備和USB設(shè)備的驅(qū)動(dòng)程序
    發(fā)表于 08-19 08:44 ?18次下載

    需要了解的Linux中 /proc/[pid] 目錄的各文件

    用戶和應(yīng)用程序可以通過(guò) proc 得到系統(tǒng)的信息,并可以改變內(nèi)核的某些參數(shù)。由于系統(tǒng)的信息,如進(jìn)程,是動(dòng)態(tài)改變的,所以用戶或應(yīng)用程序讀取 proc 文件時(shí),proc 文件系統(tǒng)是動(dòng)態(tài)從系統(tǒng)內(nèi)核讀出所需信息并提交的。
    發(fā)表于 04-26 15:37 ?656次閱讀

    Linux驅(qū)動(dòng)開(kāi)發(fā)-proc接口介紹

    Linux系統(tǒng)上的/proc目錄是一種文件系統(tǒng),即proc文件系統(tǒng)。 與其它常見(jiàn)的文件系統(tǒng)不同的是,/proc是一種偽文件系統(tǒng)(也即虛擬文件系統(tǒng)),存儲(chǔ)的是當(dāng)前內(nèi)核運(yùn)行狀態(tài)的一系列特殊
    的頭像 發(fā)表于 09-17 15:31 ?1606次閱讀

    AIO 3399ProC工具Linux Upgrade Tool 1.34

    電子發(fā)燒友網(wǎng)站提供《AIO 3399ProC工具Linux Upgrade Tool 1.34.zip》資料免費(fèi)下載
    發(fā)表于 09-21 10:25 ?2次下載
    AIO 3399<b class='flag-5'>ProC</b>工具<b class='flag-5'>Linux</b> Upgrade Tool 1.34

    AIO 3399ProC工具Linux Upgrade Tool v1.24

    電子發(fā)燒友網(wǎng)站提供《AIO 3399ProC工具Linux Upgrade Tool v1.24.zip》資料免費(fèi)下載
    發(fā)表于 09-21 10:24 ?3次下載
    AIO 3399<b class='flag-5'>ProC</b>工具<b class='flag-5'>Linux</b> Upgrade Tool v1.24

    AIO 3399ProC解合包工具(Linux

    電子發(fā)燒友網(wǎng)站提供《AIO 3399ProC解合包工具(Linux).txt》資料免費(fèi)下載
    發(fā)表于 09-21 10:01 ?11次下載
    AIO 3399<b class='flag-5'>ProC</b>解合包工具(<b class='flag-5'>Linux</b>)

    AIO 3399ProC Linux SDK源碼包(僅支持RK3399Pro)

    電子發(fā)燒友網(wǎng)站提供《AIO 3399ProC Linux SDK源碼包(僅支持RK3399Pro).txt》資料免費(fèi)下載
    發(fā)表于 09-21 09:59 ?13次下載
    AIO 3399<b class='flag-5'>ProC</b> <b class='flag-5'>Linux</b> SDK源碼包(僅支持RK3399Pro)

    淺談Linux中的proc文件系統(tǒng)

    大家好,我是ST,今天主要和大家聊一聊,Linux中的proc文件系統(tǒng)。
    發(fā)表于 10-10 14:59 ?1786次閱讀

    如何通過(guò)proc接口發(fā)起系統(tǒng)請(qǐng)求

    有些硬件平臺(tái)可能不能使用 SysRq 復(fù)合鍵,這種情況下,也可以通過(guò) /proc 接口進(jìn)入系統(tǒng)請(qǐng)求狀態(tài)。 因?yàn)樵趦?nèi)核配置選項(xiàng)中,使能了 CONFIG_MAGIC_SYSRQ 選項(xiàng)后,系統(tǒng)啟動(dòng)之后
    的頭像 發(fā)表于 09-26 16:45 ?582次閱讀

    Linux驅(qū)動(dòng)中procfs接口的創(chuàng)建

    procfs接口創(chuàng)建 實(shí)現(xiàn)效果: 例如, 在 /proc 下創(chuàng)建一個(gè)clk節(jié)點(diǎn),通過(guò) cat /proc/clk 可查看內(nèi)容: 在驅(qū)動(dòng)中添加以下代碼: # include # incl
    的頭像 發(fā)表于 09-27 11:24 ?401次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>驅(qū)動(dòng)</b>中procfs<b class='flag-5'>接口</b>的創(chuàng)建

    Linux中的proc介紹

    /proc 是一種偽文件系統(tǒng)(也即虛擬文件系統(tǒng)),存儲(chǔ)的是當(dāng)前內(nèi)核運(yùn)行狀態(tài)的一系列特殊文件,用戶可以通過(guò)這些文件查看有關(guān)系統(tǒng)硬件及當(dāng)前正在運(yùn)行進(jìn)程的信息,甚至可以通過(guò)更改其中某些文件來(lái)改變內(nèi)核的運(yùn)行狀態(tài)。
    的頭像 發(fā)表于 08-14 18:14 ?499次閱讀
    <b class='flag-5'>Linux</b>中的<b class='flag-5'>proc</b><b class='flag-5'>介紹</b>
    大上海百家乐官网娱乐城| 百家乐官网可以算牌么| 新思维百家乐官网投注法| 百家乐鞋业| 百家乐官网电子路单破解| 百家乐记算| 赌博百家乐官网趋势把握| 大发888游戏平台 黄埔网| 百家乐官网桌布呢布| 格尔木市| 永利百家乐赌场娱乐网规则| 百家乐官网防伪筹码套装| 188比分| 什么是百家乐平注法| 曼哈顿百家乐官网的玩法技巧和规则| 建水县| 全讯网新2| 24山运| 百家乐官网视频聊天软件| 大发888 ber娱乐场下载| 同乐城百家乐现金网| 金公主百家乐官网现金网| 六合彩开奖网站| 百家乐游戏作弊| 都坊百家乐官网的玩法技巧和规则 | 烟台市| 申博太阳城管理网| 百家乐赌博代理| 好望角百家乐官网的玩法技巧和规则| 澳门百家乐官网是骗人的| 泰盈娱乐城| 太子百家乐娱乐城| 做生意怕路冲吗| 百家乐官网在线娱乐网| 克拉玛依市| 娱乐城开户送金| 大发888博爱彩| 百家乐破解秘籍| 百家乐赢赌场百家乐| 怎样打百家乐官网的玩法技巧和规则| 红安县|