configfs是一個很有用的接口,可以通過創(chuàng)建文件和創(chuàng)建夾開啟和關閉相應的。同時可以通過相應的文件創(chuàng)建相應的屬性。
開啟支持要使用configfs需要在內核開啟CONFIG_CONFIGFS特性
相關API和數據結構config_group_init(struct config_group *);
configfs_register_subsystem(struct configfs_subsystem *subsys);
configfs_unregister_subsystem(struct configfs_subsystem *subsys);
實驗代碼static struct config_group *testfs_make(struct config_group *group, const char *name)
{}
static void testfs_drop(struct config_group *group, struct config_item *item)
{config_item_put(item);
}
static struct configfs_group_operations testfs_ops = {.make_group = &testfs_make,
.drop_item = &testfs_drop,
};
static struct configfs_item_type testfs_type = {.ct_group_ops = &testfs_ops,
.ct_owner = THIS_MODULE,
};
static struct configfs_subsystem testfs_subsys = {.su_group = { .cg_item = {.ci_namedbuf = "test",
.ci_type = &testfs,
},
.su_mutex = __MUTEX_INITIALIZER(testfs_subsys.su_mutex),
};
static int __init testfs_init(void)
{config_group_init(&testfs_subsys.su_group);
return configfs_register_subsystem(&testfs_subsys);
}
static void __exit testfs_exit(void)
{configfs_unregister_subsystem(&testfs_subsys);
}
module_init(testfs_init);
module_exit(testfs_exit);
以上代碼是一個最基本的功能測試代碼
測試mkdir config創(chuàng)建一個文件夾,該文件夾用于掛configfs,也可以使用內核默認的位置/sys/kernel/config
mount -t configfs nodev config
上述代碼正常工作的情況下,config目錄會有一個test文件夾
代碼簡要說明testfs_ops對應的是在test目錄mkdir,rmdir操作。
mkdir操作會調用testfs_make函數,該函數需要返回config_group類型的指針。
你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧
10年積累的成都做網站、網站建設經驗,可以快速應對客戶對網站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網絡服務。我雖然不認識你,你也不認識我。但先網站策劃后付款的網站建設流程,更有平塘免費網站建設讓你可以放心的選擇與我們合作。