Rumah > Operasi dan penyelenggaraan > operasi dan penyelenggaraan linux > Apakah maksud platform dalam linux?

Apakah maksud platform dalam linux?

WBOY
Lepaskan: 2022-07-08 17:00:13
asal
4512 orang telah melayarinya

Di Linux, platform ialah bas maya, sepadan dengan bas sebenar seperti "spi/sdio/usb/pcie" boleh memisahkan perkakasan dan perisian, dan sumber yang diterangkan oleh platform mempunyai satu persamaan alamat diambil terus pada bas CPU Peranti platform akan diberikan nama dan satu siri sumber seperti alamat dan nombor permintaan gangguan.

Apakah maksud platform dalam linux?

Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.

Apakah maksud platform dalam linux

Platform ialah bas maya, yang sepadan dengan spi/sdio/usb/pcie sebenar dan bas lain

Bas logik Fungsi penting ialah untuk menemui peranti dan mencari pemandu yang sesuai untuk mengendalikan peranti.

Bas platform ialah bas logik maya yang memenuhi fungsi sambungan logik. Untuk mengurus peranti secara seragam, platform boleh menggunakan bas platform untuk mengurus secara seragam jenis peranti yang tidak mempunyai bas secara fizikal.

Bas biasa seperti USB, SPI, UART, PCI, I2S dan bas lain adalah bas sebenar secara fizikal. Sistem Linux telah mereka bentuk kaedah untuk pengurusan bersatu bas tersebut, iaitu bas. Pada masa yang sama, bas platform juga direka bentuk untuk peranti yang tidak mempunyai bas secara fizikal Oleh itu, pereka bentuk kernel Linux mereka bentuk bas platform Dalam erti kata lain, bas plarform direka untuk peranti dalam SoC yang tidak mempunyai bas fizikal Mereka semua tergolong dalam kategori bas.

Kelebihan ini ialah penulis kod sisi peranti (peranti) hanya mengambil berat tentang bahagian perkakasan tertentu, dan bahagian biasa peranti (bahagian stabil) dilengkapkan oleh pereka bentuk kernel, yang mengurangkan pemandu Kesukaran menulis.

Melalui bas platform, atribut peranti (juga dipanggil data) dan pemacu boleh diasingkan, supaya pemacu yang sama boleh digunakan untuk menyokong peranti berbeza dengan perkakasan teras berfungsi yang sama. Ini mengelakkan fenomena bahawa satu peranti memerlukan satu pemandu dan mengurangkan kerja berulang.

Pengetahuan lanjutan

Takrifan berkaitan bas platform platform

Takrif objek berkaitan bas platform platform terdapat dalam pemacu fail/asas/platform. c tengah. Fail ini melaksanakan kaedah operasi objek bas platform dan objek.

Dua struktur data penting

1. platform_driver

Ini ialah objek struktur yang dibenamkan dengan device_driver, yang mentakrifkan kaedah mengendalikan objek.

2. platform_device

Ia ialah objek struktur peranti terbenam, yang mentakrifkan atribut sumber penerangan peranti.

Takrif objek khusus adalah seperti berikut:

1 definisi objek platform_driver

struct platform_driver 
{
int (*probe)(struct platform_device *);     //探测函数,安装设备,初始化设备,并且判断是否能成功(初始化成功,通讯成功等等)
int (*remove)(struct platform_device *);    //从内核中删除这个设备
void (*shutdown)(struct platform_device *); // 关闭设备
int (*suspend)(struct platform_device *, pm_message_t state);  //挂起
int (*resume)(struct platform_device *);    //唤醒
struct device_driver driver;          //驱动的通用属性
const struct platform_device_id *id_table; //设备ID表
};
Salin selepas log masuk

takrif pasangan objek platform_device:

struct platform_device 
{
const char* name;      //平台总线中设备的名字,在平台总线下有多个设备,每个设备都有自己的名称
intid;              //设备的排序
struct devicedev;     //所有设备通用的属性
u32num_resources;    //设备资源,如IO等一些外设等的个数
struct resource* resource; //设备资源的首地址,和上面的个数num_resources一起构成一个数组来表示这个资源
const struct platform_device_id*id_entry;  //设备ID表,表示同一种类型的几个设备的ID号,数组表示。
struct pdev_archdataarchdata; /* arch specific additions *///用户自定义数据,扩展数据
};
Salin selepas log masuk

Daftar platform pemandu bas Fungsi:

int platform_driver_register(struct platform_driver *drv)
Salin selepas log masuk

Fungsi untuk mendaftar peranti bas platform:

int platform_device_register(struct platform_device *pdev)
Salin selepas log masuk

Pembelajaran yang disyorkan: Tutorial video Linux

Atas ialah kandungan terperinci Apakah maksud platform dalam linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan