Table 1. Configuring and Starting up Network
USER SPACE COMMANDS | KERNEL SPACE (DRIVER) ACTIONS
------------------------------------------------------------------------------------------
Create a configuration file containing: | None
1. Hardware Type: PCI or ISA |
2. Hardware Option |
3. WAN Protocol |
4. Protocol Options |
5. Firmware Location |
6. Network Interface Name |
7. IP addresses |
------------------------------------------------------------------------------------------
Load WANPIPE Driver Modules | 1. Setup the /proc file system
modprobe wanpipe.o | directories
| 2. Allocate the adapter pointer array:
| size equal to the maximum number
| cards supported. This array will be
| used to store configured adapter structures.
| 3. Enable the ioctl system calls
-------------------------------------------------------------------------------------------
Parse the configuration file and | 1. Configure adapter
send the configuration data via | 2. Allocate resources
ioctl call to the driver. | 3. Load the correct protocol firmware
| 4. Start the firmware on adapter
| 5. Test interrupts
-------------------------------------------------------------------------------------------
Parse all protocol and IP data | 1. Configure the netowork adapter
from the configuration file | 2. Allocate a network interface
for the protocol on each | (Device structure)
interface defined, and pass | 3. Initialize and register
it to the driver via IOCTL | the device structure
system call. | 4. Allocate and configure
| device private area
-------------------------------------------------------------------------------------------
Using ifconfig(), bring each | 1. dev->open() function will be
network interface up and set up its | invoked in the driver which will
Local and P2P IP addresses. Also, | enable communications and
set the interface as default gateway | interrupts on the adapter.
if such an option is selected. |