O que é o mdev e como os nós / dev / * são criados no Linux?

10

Nosso kernel Linux é o 2.6.31 executado em um processador MIPS incorporado com o busybox.

O script de inicialização (rcS) inicia o mdev com:

echo "/sbin/stbhotplug" > /proc/sys/kernel/hotplug
mdev -s

Alguém pode me dizer o que o utilitário Linux mdev faz?

Parece que o hot plugging é automático, pois o stbhotplug é um script que manipula interfaces ethernet.

Além disso, os rootfs que recebemos têm apenas um dispositivo de console, por exemplo, /dev/console é o único arquivo em /dev .

No entanto, quando o sistema está em execução, o diretório /dev está cheio de arquivos de dispositivos (por exemplo, /dev/mtd , etc.).

A razão pela qual eu pergunto é que ocasionalmente recebemos um erro pelo qual é relatado que /dev/ubi_ctrl não foi encontrado ou /dev/ubi1 não foi encontrado.

Como ou quando o Linux cria esses dispositivos?

Obrigado.

    
por user626201 03.05.2011 / 14:00

3 respostas

3

Aqui está um link para o primer mdev .

    
por 25.07.2011 / 20:16
6

O mdev é uma alternativa leve ao udev para uso em dispositivos embarcados. Ambos lidam com a criação de arquivos de dispositivos em /dev e o início de ações quando determinados eventos acontecem.

    
por 03.05.2011 / 14:33
1

mdev basicamente chama mknod para um conjunto de arquivos de dispositivos pré-configurados.

Se você tiver uma opção, use:

CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y

que monta automaticamente o sistema de arquivos devtmpfs especial em /dev e permite que os módulos criem automaticamente seus próprios arquivos de dispositivo em insmod , conforme mostrado em: link

Isso é o que o Buildroot e a maioria das distribuições fazem atualmente por padrão.

    
por 06.08.2017 / 14:42