A arquitetura Altair conectada à nuvem
O núcleo do sistema conectado à nuvem é o emulador de CPU Intel 8080 de código aberto que executa binários compilados do Intel 8080. Em camadas no emulador está Altair BASIC e o sistema operacional CP/M. No CP/M, três idiomas estão disponíveis: BASIC, C e Assembly.
A solução integra vários serviços de nuvem do Azure, incluindo:
- Azure IoT Central para configurar o emulador Altair e relatórios.
- Um aplicativo Web estático do Azure para o terminal Web Altair.
- Uma máquina virtual do Azure. A máquina virtual executa o disco virtual e os serviços do agente MQTT.
O emulador Altair em execução no Azure Sphere pode ser acessado por meio de um terminal baseado em navegador.
O emulador Altair é executado no Azure Sphere Cortex-A7. Dependendo da configuração de hardware, um cache de disco virtual ou um servidor de cartão SD é executado em um dos núcleos Cortex-M4 em tempo real.
A arquitetura do aplicativo emulador Altair
O emulador Altair consiste em dois aplicativos: um aplicativo de alto nível e um aplicativo principal em tempo real.
O aplicativo de alto nível do emulador Altair é responsável por executar o emulador Altair e gerenciar comunicações. O projeto Altair é um projeto de pilha de comunicações duplas. O Azure IoT C SDK interno é usado para comunicações com o Azure IoT Central. As solicitações stdin, stdout e disk do emulador Altair são passadas sobre MQTT e um broker MQTT back-end.
O aplicativo em tempo real do serviço de cache de disco Altair fornece serviços de exclusão de cache que usam uma política de remoção menos usada recentemente para o sistema de arquivos virtual do emulador Altair. O emulador Altair usa o cache para melhorar o desempenho do disco virtual. O padrão cache-aside é útil em uma ampla variedade de cenários. Por exemplo, você pode armazenar em cache códigos de pesquisa de preços para soluções de varejo.
O aplicativo em tempo real do serviço de cartão SD Altair fornece suporte de cartão SD para o emulador Altair para os Avnet Azure Sphere Starter Kits com MikroE microSD Click. MikroE microSD Click deve ser conectado ao soquete 1 no Avnet Azure Sphere Starter Kit.
Terminal web Altair
O projeto Altair no Azure Sphere conectado à nuvem se conecta ao terminal Web redirecionando a entrada e a saída padrão pelo MQTT.
O terminal web é uma aplicação HTML/CSS/JavaScript construída nas bibliotecas MQTT e Xterm JavaScript.
O terminal Web Altair é implementado como um aplicativo Web estático do Azure.
Cache de disco virtual Altair
Os aplicativos executados em CP/M terão acesso de leitura/gravação à unidade B. Esse acesso permite que você salve arquivos quando o servidor de disco virtual estiver em execução. O servidor de disco virtual pode ser executado em sua área de trabalho ou em uma máquina virtual do Azure baseada em nuvem.
As leituras e gravações do setor de disco da unidade B são enviadas pelo MQTT para o servidor de disco virtual baseado em Python. O cache do setor de disco é usado para melhorar o desempenho da unidade virtual.