Enhanced Host Controller Interface (EHCI) - USB 2.0 - 480 MBps - high speed
Extensible Host Controller Interface (XHCI) - USB 3.0 - 4 GBps - super speed
Effective speed is lowest speed of device, cable and hub
Classes of USB devices :
Human Interface Device (HID) - Input devices: mice, keyboards, etc.)
Communications device - Modems
Mass storage device - Disk devices, flash readers, etc.
Audio - Sound devices
IrDA - Infrared devices
Printer - Printers and USB-to-parallel cables
Linux kernel supported USB in v2.3.x, backported to 2.2.18
Linux drivers may be host controller drivers (e.g. usb-ohci.o), class drivers (e.g. hid.o, usb-storage.o, printer.o, audio.o) or device-specific drivers
Modularized USB drivers are loaded by the generic /sbin/hotplug kernel support
lsdev - shows hardware including IRQ info, I/O ports and DMA channels
lspci [-t] [-vv] - info about system’s PCI buses and installed PCI devices
A module is dynamically linked into the running kernel when it is loaded
insmod/rmmod - insert/remove mocule, no dependency checking
modprobe [-r] [-a] [-t type] - list, insert or remove modules. Does dependency checking.
lsmod - list modules modinfo module-object-file.o - info about a module file
sysfs is a RAM-based filesystem derived from ramfs. It provides a means to export kernel data structures to user space. mount -t sysfs sysfs /sys
The udev process uses sysfs info to create dynamic device files as kernel modules are loaded. /etc/udev.d holds rules to be applied when adding or removing a device.
D-Bus is an IPC system that uses sysfs to implement a message bus daemon used for broadcasting system events e.g.“new device added” or “printer queue changed”.
hal was a hw abstraction layer (hw access API) on top of udev using D-Bus. It has been deprecated and rolled into udev and the kernel.
101.2 Boot the System (LCN-4 CTL-5)
Provide common commands to the boot loader and options to the kernel at boot time
Demonstrate knowledge of the boot sequence from BIOS to boot completion