Índice:
Definição - O que significa Atom?
Atom é uma linguagem de programação simultânea e específica de domínio usada para aplicativos incorporados e em tempo real. Possui agendamento de tarefas em tempo de compilação e produz código com uso aprimorado de memória e tempo de execução. O modelo de simultaneidade do Atom elimina os requisitos para algoritmos de exclusão mútua.
Techopedia explica Atom
Desenvolvido em 2007, o Atom foi lançado como código aberto em abril daquele ano. Ele foi projetado para maximizar as operações executadas em um determinado ciclo de clock sem violar a semântica da operação atômica. No entanto, o Atom também equilibra as cargas de processamento e minimiza as latências de tempo.
A descrição do circuito do Atom é composta por um conjunto de elementos e regras de estado. Cada regra é composta de dois componentes: atualizações de estado e condições de habilitação. Quando as regras estão ativadas, as ações são selecionadas para serem executadas atomicamente. As regras recebem prioridade linear e global e várias regras podem ser gravadas no mesmo elemento de estado. As dependências de dados entre regras formam um gráfico. Os gráficos cíclicos são preferidos como regras e podem ser compostos seqüencialmente. Os compiladores ordenam regras para minimizar arestas que retornam de regras de baixa a alta prioridade. Como os pares de regras são mutuamente exclusivos, as arestas não são críticas para um gráfico de dependência de dados da regra.
Objetos Atom (também conhecidos como objetos ativos) são entidades ativas semelhantes a servidores multithread. Todas as mensagens processadas criam novos threads nos objetos. Às vezes, os threads são criados simultaneamente durante a criação de um objeto para executar atividades internas. A execução do encadeamento não é preventiva e apenas um encadeamento está ativo em um objeto por vez. Os encadeamentos estão relacionados às condições de ativação que determinam os estados do objeto compatíveis com a execução. Os modelos Atom são associados a recursos (como notificação de estado, estados abstratos e predicados de estado) e são integrados à passagem de mensagens e ao planejamento de encadeamentos.
