Jump to content

Recommended Posts

Posted

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

Vladimir Malygin
Posted

Чтобы получить список всех блочных устройств, которые доступны сущности, она должна позвать 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 партиции).

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

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now


×
×
  • Create New...