interview question how does application connects to device

Mandeep Sandhu mandeepsandhu.chd at gmail.com
Tue Jul 5 03:28:59 EDT 2011


On Tue, Jul 5, 2011 at 12:29 PM, Paraneetharan Chandrasekaran
<paraneetharanc at gmail.com> wrote:
> I think the thread originator is asking about how the application knows
> which device file to read or write.
> This is done by h/w management system udev. udev creates/manages device
> nodes in /dev/ dir and notifes applications based on the udev rules written
> (via HAL events or DBUS signals).

I don't think udev is involved in the read/write file ops. Udev is
responsible for handling hotplug events, doing certain actions based
on events (as indicated by udev rules),persistent naming of devices
etc...but not file i/o.

That, I think, is handled by the VFS layer. Each device node is
uniquely identified by it's MAJOR-MINOR number combo. I guess the VFS
layer uses this to pick the correct file-ops struct to communicate
with the device. So when we try to open a device, say /devtyyS0, it's
major-minor numbers

My info is a little dated, so plz CMIIW.

HTH,
-mandeep



More information about the Kernelnewbies mailing list