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
Boot Loader (LILO or GRUB) launches the linux kernel, passing kernel parameters if needed (/etc/lilo.conf | /boot/grub/menu.lst | /boot/grub/grub.conf)
Module options (as well as aliases and post-install and pre-remove actions) are stored in /etc/modules.conf .
dmesg displays kernel messages logged at last system boot.
/var/log/messages contains all syslog messages.
101.3 Change runlevels and shutdown or reboot system (LCN-4 CTL-5)
Set the default run level
Change between run levels including single user mode
Shutdown and reboot from the command line
Alert users before switching run levels or other major system events
Properly terminate processes
Knowledge of basic features of systemd and Upstart