Download Development of a Linux Driver for a MOST Interface and Porting to
Transcript
ISA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 J jiffies . . . . . . . . . . . . . . . . . . . . . . . . . . . 33, 112 jiffies_64 . . . . . . . . . . . . . . . . . . . . . . . . 33, 112 K kernel modules . . . . . . . . . . . . . . . . . . . . . . . . . 23 kernel_thread() . . . . . . . . . . . . . . . . . . . . . . 108 kernelspace . . . . . . . see real-time applications userspace vs. kernelspace . . . . . . . . . . . . 67 kfifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 kfree() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 kmalloc() . . . . . . . . . . . . . . . . . . . . . . . . . 93, 106 L latency arbitration latency . . . . . . . . . . . . . . . . . . 58 interrupt latency . . . . . . . . . . . . . . . . 35, 134 scheduling latency . . . . . . . . . . . . . . 35, 138 latency.py . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 layer data link layer . . . . . . . . . . . . . . . . . . . . . . 49 physical layer . . . . . . . . . . . . . . . . . . . . . . . 49 libmostnetservices.so . . . . . . . . . . . . . . . . 67, 72 Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 LinuxPrintRoutingTable() . . . . . . . . . . . . 75 list linked list . . . . . . . . . . . . . . . . . . . . . . . . . 122 listings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 lock MOST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 locking Linux driver . . . . . . . . . . . . . . . . . . . . . . . . 63 real-time driver . . . . . . . . . . . . . . . 126, 129 loops_per_jiffy . . . . . . . . . . . . . . . . . . . . . . 115 low driver . . . . . . . . . . . . . . . . . . . . . . . see driver lseek . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 lsof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 lspci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 LXRT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 M Master Latency Timer . . . . . . . . . . . . . . . . . . . 58 mb() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 mdelay() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 measuring conditions . . . . . . . . . . . . . . . . . . . . . . . . . 132 166 environment hardware . . . . . . . . . . . . . . . . . . . . . . . . 131 software . . . . . . . . . . . . . . . . . . . . . . . . 131 MEASURING_PCI . . . . . . . . . . . . . . . . . . . . . . . . 135 media control . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 memory access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 allocation . . . . . . . . . . . . . . . . see allocation copying . . . . . . . . . . . . . . . . . . . . . . . 106, 129 RTNRT framework . . . . . . . . . . . . . . . 106 virtual memory . . . . . . . . . . . . . . . . . . . . . 78 message control message . . . . . . . . . . . . . . . . . . . . 53 Microsoft Windows . . . . . . . . . . . see Windows mknod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 mlock() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 MnsRequestTimer() . . . . . . . . . . . . . . . . . . . . 72 mode parallel-combined mode . . . . . . . . . 50, 75 module_exit . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 module_init . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 modules . . . . . . . . . . . . . . . . see kernel modules MOST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Access DLL . . . . . . . . . . . . . . . . . . . . . . . . . 53 application area . . . . . . . . . . . . . . . . . . . . . 48 base driver . . . . . . . . . . . . . . . . . . see driver bus frequency . . . . . . . . . . . . . . . . . . . . . . 57 data transfer . . . . . . . . . . . . . . . . . . . . . . . . 46 device structure . . . . . . . . . . . . . . . . 64, 126 frame . . . . . . . . . . . . . . . . . . . . . . . . . . . 46, 58 function area . . . . . . . . . . . . . . . . . . . . . . . 48 High Protocol . . . . . . . . . . . . . . . . . . . . . . 47 interrupt . . . . . . . . . . . . . . . . . . . . . . . . 51, 69 asynchronous interrupts . . . . . . . . . . 69 master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 timing master . . . . . . . . . . . . . . . . . . . . 46 MOST Cooperation . . . . . . . . . . . . . . . . . 45 MOST Edit view . . . . . . . . . . . . . . . . . . . . 75 NetServices . . . . . . . . . . . . . . . . . . . . . . . . . 49 NetServices DLL . . . . . . . . . . . . . . . . . . . . 53 NetServices driver . . . . . . . . . . . . . . . . . . 67 NetServices kernel module . . . . . . . . . . 68 network stack . . . . . . . . . . . . . . . . . . . . . . 49 PCI board . . . . . . . . . . . . . . . . . . . . . . . . . . 50 slave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 synchronous kernel driver . . . . . . . . . . . 77 transceiver . . . . . . . . . . . . . . . . . . . . . . . . . 48 transfer rate . . . . . . . . . . . . . . . . . . . . . . . . 46 most_netservice_high_driver . . . . . . . . . 64 Index