desenvolvimento de drivers Mac
Pergunta
Estou pensando em migrar um driver do Windows em OS X. Agora eu estou apenas começando a olhar ao redor para ver o que está disponível e não há muito sobre C objetiva e cacau. Parece que a linguagem eo quadro de cacau são APIs de alto nível, estou certo supor que?
Eu tenho fortes habilidades de C ++ e eu usá-los para o desenvolvimento do kernel, eu posso usar as mesmas habilidades para o desenvolvimento de drivers Mac (I imaginar a resposta é sim). Tem Macintosh qualquer tipo de ambiente de aplicação / dev para a construção de motoristas?
Solução
O a Apple Hardware & Drivers página tem lotes da informação sobre o desenvolvimento de drivers Mac . Ele deve ser suficiente para você começar. Alguns dos destaques:
-
Introdução -. a guiou a trajectória de hardware e driver desenvolvedores novos para Mac OS X aprender
-
Frameworks - referências da API organizado pelo quadro.
-
USB Código de exemplo - Recursos para o desenvolvimento de dispositivos USB e software para acessá-los.
-
FireWire Código de exemplo - Recursos para o desenvolvimento de dispositivos FireWire e software para acessá-los.
Outras dicas
Iniciar aqui http://developer.apple.com /documentation/Darwin/Conceptual/KernelProgramming/About/About.html
desenvolvimentoMac geralmente é feito usando o Xcode, como ele lida com vários conceitos específicos do Mac como pacotes e frameworks. Você provavelmente irá estar trabalhando em puro C. Você não vai usar Cacau para o desenvolvimento de drivers, como é que uma estrutura orientada para a aplicação.
Primeiro, C ++ funciona muito bem, embora Objective C não é tão difícil de aprender. Se você tem um fundo em drivers do Windows que você sabe um pouco da gestão de memória essentials- é crítica, o tempo é crítico, etc.
Você provavelmente irá utilizar o IOKit. Sugiro começar aqui por um bom passo a passo de introdução para obter o motorista para o trabalho.
Há algumas coisas que não parecem funcionar da maneira que eles dizem que vão, e eu estou tentando descobrir se ele realmente não é possível depurar um motorista em uma única máquina, mas é melhor do que a maioria maçã documentação.