Jump to content

Блочные устройства в KOS


Recommended Posts

Как в KOS узнать список доступных блочных устройств (есть ли в KOS такое понятие, как блочное устройство)? В примере examples/embedded_vfs используются блочные устройства в вызове mount "mmc0,0", "Ahci0Port0,0". Где определены эти имена?

Link to comment
Share on other sites

Чтобы получить список всех блочных устройств, которые доступны сущности, она должна позвать API BlkDevEnumPorts. API зовется в цикле, пока не будет возвращен код BLKDEV_ENOENT.

char portName[256] = { 0 };   

do {

    rc = BlkDevEnumPorts(0, sizeof(portName), portName);

    if (rc == BLKDEV_EOK) {

        printf("Found port %s\n", portName);

    }

} while (rc != BLKDEV_ENOENT);

 

Cуществует функция BlkDevLookup, позволяющая найти блочное устройство, соответствующее определенному паттерну (например, по GUID партиции).

Что касается паттерна того, как будет называться какое устройство — на текущий момент это зависит от драйвера, при регистрации устройств каждый драйвер сам назначает имя.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now


×
×
  • Create New...