- UID
- 872238
|
如果地址属于IO空间ioPortBase = (PUCHAR)ioPhysicalBase.LowPart;*ppStaticAddress=ioPortBase这种情况只属于x86平台,是IO空间就可以直接访问,即使是用户模式。
SerInit函数接着初始化SER_INFO结构体成员,之后调用SL_Init函数,这个函数在ser16550中定义,负责初始化SER16550_INFO结构体,在这个结构体中保存串口8个寄存器的地址。SerInit函数执行完毕后COM_Init函数创建接收缓冲区,然后调用StartDispatchThread函数初始化中断并且创建IST。StartDispatchThread函数在内部调用InterruptInitialize函数关联SysIntr和Event,然后调用InterruptDone函数告诉内核当前串口可以中断处理,接着调用CreateThread函数创建IST线程。 |
|