KITLTRANSPORT
9/8/2008
Essa estrutura contém informações que definem um transporte KITL. As chamadas kernel OEMKitlInit e o OEM é responsável de preencher a estrutura com apropriado ponteiros função.
Observação
Começando com Windows CE 5.0, os OEMs não precisam fornecer uma reserva para KITL in KITLTRANSPORT.
Syntax
typedef struct _KITLTRANSPORT{
DWORD dwBootFlags;
char szName[KITL_MAX_DEV_NAMELEN];
UCHAR Interrupt;
UCHAR WindowSize;
UCHAR FrmHdrSize;
UCHAR FrmTlrSize;
DWORD dwPhysBuffer;
DWORD dwPhysBufLen;
PFN_ENCODE pfnEncode;
PFN_DECODE pfnDecode;
PFN_SENDFRAME pfnSend;
PFN_RECVFRAME pfnRecv;
PFN_ENABLEINT pfnEnableInt;
PFN_GETDEVCFG pfnGetDevCfg;
PFN_SETHOSTCFG pfnSetHostCfg;
} KITLTRANSPORT, *PKITLTRANSPORT;
Os membros
dwBootFlags
Bit campos que especificar qual serviço para iniciar no tempo inicializar. Esse membro pode ser definido como um ou mais dos seguinte valores.Valor Descrição KITL_FL_DBGMSG
O serviço Mensagens depuração será registrado.
KITL_FL_PPSH
O serviço shell de texto será registrado.
KITL_FL_KDBG
O depurador kernel será iniciado.
KITL_FL_CLEANBOOT
Força uma inicializar limpa.
- szName
Nome do dispositivo, que está limitado a caracteres KITL_MAX_DEV_NAMELEN incluindo o NULL caractere.
Interrupção
Para um transporte Interrupt-based, o valor é definido como o valor SYSINTR_* de solicitação de interrupção (IRQ). Se este for um transporte com base em pesquisa, defina este valor para KITL_SYSINTR_NOINTR.Iniciando com Windows CE 5.0, se esse campo for definido como KITL_SYSINTR_NOINTR, pfnEnableInt pode ser NULL.
WindowSize
Necessário janela tamanho para os serviços usar como padrão.Começando com Windows CE 5.0, esse valor é ignorado pelo KITL.
- FrmHdrSize
Tamanho do cabeçalho de quadro específico para transporte do OEM.
- FrmTlrSize
Tamanho de informações finais de quadro específico para transporte do OEM.
dwPhysBuffer
Local de uma reserva virtual mapeada estaticamente que é usada pelos serviços kernel usar como padrão. Essa memória é reservada no arquivo Config.bib.Começando com Windows CE 5.0, esse valor é ignorado pelo KITL.
dwPhysBufLen
Tamanho da reserva de memória para os serviços usar como padrão.Começando com Windows CE 5.0, esse valor é ignorado pelo KITL.
- pfnEncode
Funcionar para codificar um pacote com um cabeçalho OEM-defined e informações finais.
- pfnDecode
Funcionar para decodificar um pacote recebido do transporte usando informações de cabeçalho e informações finais Transport-specific.
- pfnSend
Função para enviar um pacote por meio de transporte.
- pfnRecv
Função para receber um pacote de transporte.
pfnEnableInt
Função para habilitar ou desativar transporte interrupções.Começando com Windows CE 5.0, esse valor pode ser NULL se o Interrupção campo é definido como KITL_SYSINTR_NOINTR.
- pfnGetDevCfg
Funcionar para recuperar o dados de configuração transporte dispositivo.
- pfnSetHostCfg
Função para definir a dados de configuração computador hospedar.
Remarks
O OEM deve fornecer o seguinte informações para a estrutura para o kernel para inicializar KITL:
- WindowSize não pode ser 0.
- FrmHdrSize e FrmTailorSize Não deve ser 0, a menos que você não fizer estruturas no pacote. Geralmente, o cabeçalho quadro e / ou tailor fornecem informações soma de verificação para dividir os pacotes de each other. Área de trabalho tanto dispositivo-lado KITL precisa ser consistente em interpretar os quadros ou KITL não irá trabalho.
- dwPhysBuffer e dwBufferLen Deve ser apontando para uma região memória, não conhecida para NK, de tamanho > = WindowSize * 2 * KITL_MTU.
- pfnEncode/pfnDecode não pode ser 0. Ele é usado para fornecer as estruturas dos pacotes conforme descrito no segundo marcador. Para obter descrições função, consulte % _WINCEROOT%\Public\Common\Oak\Inc\Kitl.h.
- Se o transporte estiver interrupção-orientada, onde o campo interrupção não é igual a KITL_SYSINT_NOINTR, você deverá fornecer a função a capacidade para habilitar ou desativar a interrupção pfnEnableInt.
- A maioria dos ponteiros de função não pode ser NULL. Fornecer stubs se o transporte não é necessário ObterXXXConfiguração Ou DefinirXXXConfiguração.
Começando com Windows CE 5.0, pfnEnableInt pode ser NULL se o Interrupção campo é definido como KITL_SYSINTR_NOINTR.
Requirements
Header | kitl.h |
Windows Embedded CE | Windows CE .NET 4.0 and later |
See Also
Reference
OEMKitlInit
TransportEncode
TransportDecode
TransportSend
TransportRecv
TransportEnableInt
TransportGetDevCfg
TransportSetHostCfg