当前位置:懂科普 >

IT科技

> java platform

java platform

<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

java platform是什么,让我们一起了解一下?

paltform是一种虚拟的总线,用于管理外设资源、内存资源、中断资源,在硬件上有USB-BUS总线,PCI-BUS总线,这是在物理设备上实际存在的总线。platform的一个优点就是将驱动和设备分开,提高驱动的移植性。

platform的灵魂是:device(设备)driver(驱动)platform_bus(platform总线),其特点是设备,驱动分层动态的管理和加载,其中platform_bus是一个虚拟的总线。

drvier和device匹配的方法有3种:

1、当一个设备注册的时候,他会在总线上寻找匹配的driver,platform device一般在系统启动很早的时候就注册了。

2、当一个驱动注册[platform_driver_register()]的时候,他会遍历所有总线上的设备来寻找匹配,在启动的过程驱动的注册一般比较晚,或者在模块载入的时候。

java platform

3、当一个驱动注册[platform_driver_probe()]的时候, 功能上和使用platform_driver_register()是一样的,唯一的区别是它不能被以后其他的device probe了,也就是说这个driver只能和 一个device绑定。

如何定义一个driver?

static struct platform_driver test_platform_driver = {.probe   = dev_test_probe, .remove   = dev_test_remove,.suspend  = dev_test_suspend,.resume   = dev_test_resume,.driver  = {.owner  = THIS_MODULE,.name   = "cx2837_test",},};

如何定义一个device(设备)?

static struct platform_device dev_fb0 = { .name = "cx2837_test", .id = 1, };

标签: java platform
  • 文章版权属于文章作者所有,转载请注明 https://dongkepu.com/itkeji/p9looj.html