BR102016009626A2 - método de fornecimento de controle de failover e sistemas de controle de failover e de controle para uma aeronave - Google Patents

método de fornecimento de controle de failover e sistemas de controle de failover e de controle para uma aeronave Download PDF

Info

Publication number
BR102016009626A2
BR102016009626A2 BR102016009626A BR102016009626A BR102016009626A2 BR 102016009626 A2 BR102016009626 A2 BR 102016009626A2 BR 102016009626 A BR102016009626 A BR 102016009626A BR 102016009626 A BR102016009626 A BR 102016009626A BR 102016009626 A2 BR102016009626 A2 BR 102016009626A2
Authority
BR
Brazil
Prior art keywords
control
compute
failover
subset
node
Prior art date
Application number
BR102016009626A
Other languages
English (en)
Inventor
Mark Lawrence Darnell
Stefano A M Lassini
Timothy John Theriault
Original Assignee
Ge Aviat Systems Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US15/095,285 external-priority patent/US10169175B2/en
Application filed by Ge Aviat Systems Llc filed Critical Ge Aviat Systems Llc
Publication of BR102016009626A2 publication Critical patent/BR102016009626A2/pt

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0055Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements
    • G05D1/0077Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots with safety arrangements using redundant signals or controls
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • G06F11/1645Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components and the comparison itself uses redundant hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2025Failover techniques using centralised failover control functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64CAEROPLANES; HELICOPTERS
    • B64C13/00Control systems or transmitting systems for actuating flying-control surfaces, lift-increasing flaps, air brakes, or spoilers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Hardware Redundancy (AREA)

Abstract

trata-se de sistemas e métodos para o fornecimento de controle de failover em um sistema de controle. por exemplo, um fluxo de dados a partir de uma pluralidade de nós de computação em um sistema de computação pode ser monitorado. um primeiro subconjunto de nós de computação pode ser selecionado com base nos fluxos de dados. sinais de concessão de controle podem ser gerados para cada nó de computação do primeiro subconjunto. uma saída para um ou mais nós de computação do primeiro subconjunto pode ser ativada com base, ao menos em parte, em uma quantidade de sinais de concessão de controle gerados para cada nó de computação do primeiro subconjunto. a autoridade de controle pode, então, ser concedida aos um ou mais nós de computação do primeiro subconjunto.

Description

“MÉTODO DE FORNECIMENTO DE CONTROLE DE FAILOVER E SISTEMAS DE CONTROLE DE FAILOVER E DE CONTROLE PARA UMA AERONAVE” Reivindicação e Prioridade [001] o presente pedido de patente é baseado em, e reivindica prioridade ao, Pedido de Patente Provisório dos Estados Unidos de número 62/154.918 que tem como data de depósito 30 de abril de 2015, e que está incorporado no presente documento a título de referência.
Campo da Invenção [002] O assunto presente é relacionado, em geral, a sistemas de controle e, mais particularmente, ao fornecimento de controle de failover em um sistema de controle.
Fundamentos da Invenção [003] A aeronáutica moderna pode empregar diversos computadores para a execução de uma variedade de tarefas, incluindo a aquisição de informações ou o controle de sistemas associados a uma pluralidade de funções, como por exemplo, controle de voo, navegação, integridade, funções de manutenção e/ou outras funções adequadas. Para aplicações de voo críticas, a redundância e a tolerância a falhas podem ser exigidas devido, em parte, ao impacto potencial de falhas.
[004] Os sistemas de controle de failover redundantes podem exigir um supervisor que monitore a integridade do sistema e/ou o estado funcional do sistema, e previna que nós de computação com mal funcionamento ou que não funcionem corrompam a integridade do sistema. Em particular, o supervisor pode conceder controle a um ou mais nós de computação e remover o controle de um ou mais nós de computação não funcionais ou com mal funcionamento. Dessa maneira, se um nó de computação falha, um nó de computação reserva pode ter autoridade concedida para o controle do sistema sem falha geral do sistema. Tal redundância pode ser difícil de ser adicionada a sistemas de controle que tenham sido projetados originalmente para nós de computação não redundantes. Por exemplo, o emprego de técnicas de redundância em uma aeronave que não está conectada, ajustada ou adaptada de outra forma para lidar com supervisores de sistema para sistemas de controle redundantes pode exigir uma vistoria maior dos sistemas da aeronave.
Breve Descrição da Invenção [005] Os aspectos e vantagens das modalidades da presente revelação serão estabelecidos, em parte, na descrição a seguir, ou podem ser aprendidos a partir da descrição, ou podem ser aprendidos através da prática das modalidades.
[006] Uma modalidade exemplificadora da presente revelação é direcionada a um método de fornecimento de controle de failover em um sistema de computação. O método inclui o monitoramento de um fluxo de dados gerado por uma pluralidade de nós de computação em um sistema de computação. O método inclui adicionalmente a seleção de um primeiro subconjunto da pluralidade de nós de computação com base, ao menos em parte, dos fluxos de dados monitorados. O método inclui adicionalmente a geração de um ou mais sinais de concessão de controle para cada nó de computação do primeiro subconjunto. O método inclui adicionalmente a ativação de uma saída para um ou mais nós de computação do primeiro subconjunto com base, ao menos em parte, em uma quantidade de sinais de concessão de controle gerados para cada nó de computação do primeiro subconjunto. O método inclui adicionalmente a concessão de autoridade de controle do sistema de computação aos um ou mais nós de computação do primeiro subconjunto.
[007] Outro aspecto exemplificador da presente revelação é direcionado a um sistema de controle de failover para a concessão de autoridade de controle de nós de computação de um sistema de computação. O sistema inclui uma pluralidade de nós de computação e um controlador de failover configurado para a concessão de autoridade de controle para ao menos um nó de computação. O controlador de failover inclui uma pluralidade de monitores de failover configurados para a monitoração de um fluxo de dados a partir de cada nó de computação, seleção de um primeiro subconjunto da pluralidade de nós de computação com base, ao menos em parte, no fluxo de dados monitorado e geração de um ou mais sinais de concessão de controle para ao menos um nó de computação do primeiro subconjunto. O controlador de failover inclui adicionalmente uma pluralidade de circuitos de eleitor de controle. Cada circuito de eleitor de controle é acoplado entre a pluralidade de monitores de failover e um nó de computação. Cada circuito de eleitor de controle é configurado para a concessão de autoridade de controle ao nó de computação correspondente quando o circuito de eleitor de controle recebe ao menos dois sinais de concessão de controle a partir da pluralidade de monitores de failover.
[008] Ainda outro aspecto exemplificador da presente revelação é direcionado a um sistema de controle para uma aeronave. O sistema de controle inclui uma pluralidade de nós de computação e um controlador de failover configurado para a concessão de autoridade de controle para ao menos um nó de computação. O controlador de failover inclui uma pluralidade de monitores de failover configurados para o monitoramento de um fluxo de dados a partir de cada nó de computação, seleção de um primeiro subconjunto dentre a pluralidade de nós de computação com base, ao menos em parte, no fluxo de dados supramencionado e geração de um ou mais sinais de concessão de controle para ao menos um nó de computação do primeiro subconjunto. O controlador de failover inclui adicionalmente uma pluralidade de circuitos de eleitor de controle. Cada circuito de eleitor de controle é acoplado entre a pluralidade de monitores de failover e um nó de computação. Cada circuito de eleitor de controle é configurado para conceder autoridade de controle ao nó de computação correspondente quando o circuito de eleitor de controle recebe sinais de concessão de controle a partir de ao menos uma maioria dentre a pluralidade de monitores de failover.
[009] As variações e modificações podem ser feitas nestes aspectos exemplificadores da presente revelação.
[010] Essas e outras características, aspectos e vantagens das diversas modalidades serão melhores compreendidas com relação a descrição a seguir e reivindicações anexas. Os desenhos inseridos, que são aqui incorporados e constituem uma parte dessa especificação, ilustram as modalidades da presente revelação e, junto à descrição, servem para a explicação dos princípios relacionados.
Breve Descrição dos Desenhos [011] A discussão detalhada das modalidades direcionadas a um indivíduo com habilidade comum na técnica é estabelecida na especificação, que faz referência ás figuras anexas, nas quais: A Figura 1 representa um circuito de controle de failover exemplificador de acordo com as modalidades exemplificadoras da presente revelação; A Figura 2 representa um circuito de eleitor de controle exemplificador de acordo com as modalidades exemplificadoras da presente revelação: A Figura 3 representa um circuito de controle de failover exemplificador de acordo com as modalidades exemplificadoras da presente revelação; A Figura 4 representa um fluxograma de um método exemplificador de fornecimento de controle de failover em um sistema de controle de acordo com as modalidades exemplificadoras da presente revelação: A Figura 5 representa um fluxograma de um método exemplificador da seleção de um primeiro subconjunto de nós de computação de acordo com as modalidades exemplificadoras da presente revelação; A Figura 6 representa um fluxograma de um método exemplificador de fornecimento de um processo de recomposição de um nó de computação de acordo com as modalidades exemplificadoras da presente revelação; e A Figura 7 representa um fluxograma de um método exemplificador de fornecimento de controle de failover em um sistema de controle de acordo com as modalidades exemplificadoras da presente revelação.
Descrição Detalhada da Invenção [012] Será feita referência agora em detalhes às modalidades da invenção, um ou mais exemplos dos quais são ilustrados nos desenhos. Cada exemplo é fornecido a título de explicação da invenção, e não limitação da mesma. Na verdade, ficará claro aos versados na técnica que diversas modificações e variações podem ser feitas na presente invenção sem se afastar do escopo ou essência da mesma. Por exemplo, as características ilustradas ou descritas como parte de uma modalidade podem ser usadas em outra modalidade a fim de produzir uma modalidade adicional. Dessa forma, é compreendido que a presente invenção cobre tais modificações e variações conforme apresentadas dentro do escopo das reivindicações anexas e seus equivalentes.
[013] Os aspectos exemplificadores da presente revelação são direcionados ao fornecimento de autoridade de controle de failover a um ou mais nós de computação em um sistema de controle. Por exemplo, os fluxos de dados fornecidos por uma pluralidade de nós de computação em um sistema de controle associado a um sistema de computação (por exemplo, um sistema de computação aviônico) pode ser monitorado para a identificação de um ou mais fluxos de dados válidos. Um fluxo de dados válido pode ser indicativo, ao menos em parte, de um nó de computação que é capaz de controlar o sistema de computação. A autoridade de controle do sistema de controle pode ser concedida a ao menos um dos nós de computação que tem um fluxo de dados válido.
[014] Mais particularmente, um sistema de controle de failover pode ser acoplado a ou de outra forma incorporado dentro de um sistema de computação como um sistema de computação aviônico associado a uma aeronave. Em alguns empregos, o controlador de failover pode ser empregado dentro de uma aeronave, como uma aeronave legacy, que não é conectada, ajustada ou adaptada de outra forma para a supervisão de controles de sistemas redundantes. O sistema de controle pode incluir uma pluralidade de nós de computação e um controlador de failover configurado para a concessão de autoridade de controle a ao menos um subconjunto dos nós de controle. Em alguns empregos, o controlador de failover pode incluir uma pluralidade de monitores de failover e uma pluralidade de circuitos de eleitor de controle. Por exemplo, os monitores de failover podem ser dispositivos separados e independentes configurados para o monitoramento de integridade dos nós de computação no sistema. Cada circuito de eleitor pode ser acoplado entre um nó de computação e a pluralidade de monitores de failover.
[015] Os monitores de failover podem ser configurados para o monitoramento de um fluxo de dados em série contínuo transmitido de forma respectiva pelos nós de computação. Os fluxos de dados podem ser gerados pelos nós de computação após a conclusão do processo de ligação dos nós de computação. Conforme outro exemplo, o fluxo de dados pode ser fornecido na conclusão de um processo de recomposição pelos nós de computação. O fornecimento dos fluxos de dados aos monitores de failover podem indicar as integridades dos nós de computação. Em alguns empregos, o fluxo de dados pode incluir uma sequência de palavras de dados determinadas de acordo com um ou mais algoritmos predeterminados. O fluxo de dados pode ser monitorado para a determinação de fluxos de dados válidos. Um fluxo de dados válido pode ser um fluxo de dados que tem a sequência correta e/ou temporização de palavras de dados. Conforme indicado, um fluxo de dados válido fornecido por um nó de computação pode indicar que o nó de computação está funcionando de forma adequada e é capaz de controlar o sistema de computação (por exemplo, tem a autoridade de controle sobre o sistema de controle).
[016] Na detecção de uma quantidade suficiente de fluxos de dados válidos, os monitores de failover podem iniciar um processo de concessão de controle. A política que define que a quantidade suficiente pode ser determinada ao menos em parte nas exigências do sistema de computação e/ou sistema de controle. Por exemplo, se o sistema de computação exige apenas que a autoridade de controle seja concedida a um nó de computação por vez, a quantidade suficiente de fluxos de dados válidos é um. Se o sistema de computação exige que dois nós de computação tenham a autoridade de controle concedida de forma simultânea sobre o sistema de computação, o número suficiente é dois.
[017] O processo de concessão de controle pode incluir o pedido de que um ou mais nós de computação assumam o controle do sistema de controle. Os um ou mais nós de computação podem ser selecionados com base, ao menos em parte, em uma ordem de recebimento do fluxo de dados contínuo. Em particular, os monitores de failover podem proporcionar um sinal de pedido de controle (ou mestre) aos nós de computação que correspondem aos fluxos de dados válidos identificados. Os nós de computação podem confirmar sua habilidade de controle do sistema de computação através do fornecimento de um sinal de prontidão de controle (ou mestre) de volta aos monitores de failover. Em alguns empregos, se um nó de computação não fornece um sinal de prontidão de controle de volta para os monitores de failover dentro de um período de tempo predeterminado, os monitores de failover podem selecionar um nó de computação diferente que tenha um fluxo de dados válido como substituto.
[018] Mediante o recebimento dos sinais de prontidão de controle, os monitores de failover podem gerar o sinal de concessão de saídas de controle (ou mestre) para o(s) nó(s) de computação(s) correspondente(s). Tais sinais de concessão de controle podem fornecer uma indicação ao nó de computação(s) que o nó de computação(s) tem autoridade de controle sobre o sistema de controle. Em alguns empregos, os sinais de concessão de controle podem ser usados pelo hardware de nó de computação como um sinal de capacitação independente para garantir que apenas os nós corretos tenham autoridade de controle.
[019] Conforme indicado, em alguns empregos, o controlador de failover pode incluir uma pluralidade de circuitos de eleitor acoplados entre a saída dos monitores de failover e os nós de computação. Por exemplo, o controlador de failover pode incluir um circuito de eleitor de pedido de controle, um circuito de concessão de controle de eleitor, e um circuito de eleitor de reinicialização para cada nó de computação. Em alguns empregos, os circuitos de eleitor podem incluir uma estrutura coletora de abertura que emprega uma equação Booleana garantindo que a saída de circuito de eleitor para o nó de computação seja ativo com base, ao menos em parte, no número de saídas de gerenciamento de failover recebidos. As saídas dos monitores de failover podem ser fornecidas aos circuitos de eleitores correspondentes de forma a implementar serviço a prova de falha. Em particular, os circuitos de eleitor podem ser configurados de forma que a quantidade predeterminada de saídas de monitoramento de failover deva concorrer para a ativação de uma saída do circuito de eleitor. Em alguns empregos, a quantidade predeterminada de monitores de failover pode ser uma maioria de monitores de failover. Dessa maneira, a quantidade de saídas de monitoramento de failover pode ser comparada a um limite. Se a quantidade de saídas de monitoramento de failover é maior do que ou igual ao limite, a saída de circuito de eleitor pode ser ativada de forma que um sinal de controle correspondente seja fornecido ao nó de computação.
[020] Como exemplo, em alguns empregos, ao menos dois monitores de failover devem fornecer um sinal adequado aos circuitos de eleitor antes de os circuitos de eleitor fornecerem saída de concessão de controle correspondente aos nós de computação. Por exemplo, se um primeiro monitoramento de failover e um segundo monitoramento de failover geram sinais de concessão de controle para um primeiro nó de computação e fornecem os sinais de concessão de controle a um circuito de concessão de controle de eleitor correspondente, o circuito de eleitor pode ativar uma saída de concessão de controle ao primeiro nó de computação. Em tal cenário, se um terceiro monitoramento de failover fornece um sinal de concessão de controle a um circuito de eleitor que corresponde a um segundo nó de computação, o circuito de eleitor não ativará uma saída de concessão de controle ao segundo nó de computação.
[021] Uma vez que a autoridade de controle foi concedida à quantidade suficiente de nós de computação, um subconjunto reserva de nós de computação pode ser determinado. Em particular, o subconjunto de reserva de nós de computação pode ser nós de computação que não têm atualmente autoridade de controle sobre o sistema de controle, mas que são capazes de ter autoridade de controle. Em alguns empregos, o subconjunto de reserva pode ser determinado com base, ao menos em parte, nos fluxos de dados fornecidos pelos nós de computação. Em particular, o subconjunto de reserva pode ser determinado através da identificação de fluxos de dados válidos a partir de um ou mais nós de computação que não tem atualmente autoridade de controle, e adicionando os nós de computação ao subconjunto de reserva.
[022] Em alguns empregos, um ou mais nós de computação que tem autoridade de controle podem ser removidos a partir da autoridade e/ou reinicio. Por exemplo, os monitores de failover podem detector um fluxo de dados inválido a partir de um nó de computação controlador. Um fluxo de dados inválido pode corresponder a uma interrupção e/ou um erro no fluxo de dados, e pode indicar que o nó de computação não está funcionando perfeitamente, e/ou não capaz de ter autoridade de controle. Em resposta à detecção do fluxo de dados inválido, os monitores de failover podem remover a autoridade de controle a partir do nó de computação, e substituir o nó de computação por um nó de computação a partir do subconjunto de reserva. Dessa maneira, o nó de computação a partir do subconjunto de reserva pode ter autoridade de controle concedida de acordo com aspectos exemplificadores e empregos da presente revelação.
[023] Conforme outro exemplo, um nó de computação de controle pode ceder ou de reinicializar sua autoridade de controle. Em tal cenário, os monitores de failover podem selecionar um nó de computação substituto a partir do subconjunto de reserva, remover a autoridade de controle a partir do nó de computação de cedência e conceder autoridade de controle ao nó de computação substituto.
[024] Um nó de computação pode ser reinicializado com base, ao menos em parte, em um fluxo de dados invalido detectados ou identificados (por exemplo, devido a erros ou inação) associado ao nó de computação. Uma vez que o nó de computação de reinicialização reestabelece a comunicação (por exemplo, através de um fluxo de dados em série válido) com os monitores de failover, o nó de computação de reinicialização pode ser adicionado ao subconjunto de reserva. Em alguns empregos, um nó de computação pode ser reinicializado com base, ao menos em parte, em um pedido de reinicialização a partir de um ou mais outros nós de computação. Por exemplo, tais um ou mais outros nós de computação podem fornecer um pedido de reinicialização aos monitores de failover, que podem conceder o pedido se um número limite de pedidos de reinicialização for recebido.
[025] Em alguns empregos, os monitores de failover podem mudar de forma periódica o estado e os dados de sincronização, por exemplo, através de um barramento de monitoramento de failover. Por exemplo, os monitores de failover podem mudar dados relacionados a faltas detectadas através de testes incorporados (BIT) ou causados por dados inconsistentes. Em alguns empregos, as discrepâncias em dados discretos recebidos pelos monitores de failover podem ser detectadas e dispostas de forma adequada. Como um exemplo, um monitoramento de failover pode gerar decisões incorretas em razão de dados de inserção incorretos. Neste caso, os outros monitores de failover sobre o barramento de monitoramento de failover podem detectar inserções erradas e registrar um pedido de ação de manutenção. Em casos onde a redundância do monitoramento de failover permite, o monitoramento de failover que gera decisões incorretas pode ser desabilitado como resultado de outro consenso de monitores de failover. Nesses empregos em que os três monitores de failover são usados, um único erro de monitoramento de failover pode não causar um erro no sistema, então, a disposição pode ser simplesmente uma bandeira de precaução e um pedido de manutenção na primeira oportunidade. Em alguns empregos, o barramento de monitoramento de failover pode incluir características de isolamento em todos os monitores de failover para garantir que a falha de energia ou condução em um primeiro monitoramento de failover não irá se propagar aos monitores de failover restantes.
[026] Conforme indicado, o fornecimento de controle de failover de acordo com as modalidades exemplificadoras da presente revelação pode possibilitar as técnicas de controle de redundância para uma pluralidade de nós de computação não-redundantes. Por exemplo, o controlador de failover pode ser empregado com uma pluralidade de nós de computação que não são projetados para controle de redundância a fim de monitorar a funcionalidade do sistema e a fim de evitar que nós com mal funcionamento corrompam a integridade do sistema. Ao separar a função de monitoramento de fluxo de dados a partir dos nós de computação, as técnicas de controle de failover podem ser determinadas de forma independente a partir dos nós de computação.
[027] Com referência agora ás figuras, os aspectos exemplificadores da presente revelação serão discutidos com mais detalhes. Por exemplo, a Figura 1 representa uma vista geral de um sistema de controle de failover exemplificador 100 de acordo com as modalidades exemplificadoras da presente revelação. O sistema de controle 100 inclui os nós de computação 102 e 104, monitores de failover 106, 108, e 110, solicitação de controle de eleitoresi 12 e 114, eleitor de concessões de controle 116 e 118, e eleitores de reinicialização 120 e 122.
[028] O sistema de controle 100 pode ser configurado para o fornecimento de controle de failover de um sistema de computação, como um sistema aviônico associado a uma aeronave. Em particular, os monitores de failover 106-110 podem monitorar um fluxo de dados 124 a partir de cada nó de computação 102,104. Os fluxos de dados 124, conforme mostrado na Figura 1 são pares de fluxo de dados únicos e de multiponto a partir dos nós de computação para cada monitoramento de failover. Entretanto, será compreendido que diversos outros fluxos de dados adequados podem ser usados sem que desvie do escopo da presente revelação. Conforme indicado acima, os fluxos de dados 124 podem ser fornecidos aos monitores de failover 106-110 subsequente a um processo de ligação dos nós de computação. Em alguns empregos, os fluxos de dados 124 podem ser contínuos, fluxos de dados em série de uma sequência predeterminada de palavras de dados. Quando os monitores de failover 106-110 detectam ou identificam uma quantidade suficiente de fluxos de dados válidos 124, os monitores de failover 106-110 podem iniciar um processo de concessão de controle.
[029] Em particular, os monitores de failover 106-110 podem fornecer os sinais de pedido de controle ao eleitor de pedido de controle que corresponde ao nó de computação(s) que forneceu os fluxos de dados válidos detectados. Conforme indicado acima, os circuitos de eleitores podem ser designados para falharem de forma passiva/segura (por exemplo, triestado) a fim de evitar que um único monitoramento de failover com mal funcionamento corrompa o sistema 100. Por exemplo, se o nó de computação 102 fornece os fluxos de dados válidos, os monitores de failover 106-110 podem fornecer os sinais de pedido de controle a fim de controlar o eleitor de pedido 112. O eleitor de pedido de controle 112 pode, então, determinar se interrompe a ativação da saída do pedido de controle para o nó de computação 102 com base, ao menos em parte, na quantidade de sinais de pedido de controle recebidos pelo eleitor 112. Por exemplo, se o eleitor 112 recebe sinais de pedido de controle a partir de dois monitores de failover, o eleitor 112 pode ativar a saída de pedido de controle e fornecer a saída para o nó de computação 102.
[030] No recebimento do sinal de pedido de controle, o nó de computação 102 pode fornecer um sinal de prontidão de controle 126 para monitores de failover 106-110. Por exemplo, o sinal de prontidão de controle 126 pode ser fornecido se o nó de computação 102 é capaz de receber a autoridade de controle. Em alguns empregos, o sinal de prontidão de controle 126 deve ser fornecido para monitores de failover 106-110 dentro de um período de tempo predeterminado. Em tais empregos, se o sinal de prontidão de controle não é fornecido dentro do período de tempo, os monitores de failover podem fornecer um sinal de pedido de controle para um nó de computação diferente (por exemplo, nó de computação 104). No recebimento do sinal de prontidão de controle 126, os monitores de failover podem ser configurados para o recebimento de um sinal de concessão de controle para o controle de eleitor de concessão 116. O controle de eleitor de concessão 116 pode ativar uma saída de concessão de controle e conceder autoridade de controle ao nó de computação 102 com base, ao menos em parte, na quantidade de sinais de concessão de controle recebidos a partir dos monitores de failover 106-110. Por exemplo, se sinais de concessão de controle são recebidos a partir de quaisquer dois monitores de failover, a autoridade de controle pode ser concedida ao nó de computação 102.
[031] Uma vez que a autoridade de controle foi concedida, os monitores de failover 106-110 podem continuar monitorando os fluxos de dados 124 a partir dos nós de computação 102, 104. Por exemplo, se um fluxo de dados válido é detectado a partir dos nó(s) de computação(s) não controlador(es) (por exemplo, nó de computação 104), os nó(s) de computação(s) não controlador(es) pode(m) ser adicionado(s) a um subconjunto de reserva de nós de computação capazes de controle. O subconjunto de reserva pode ser usado a fim de selecionar um nó de computação substituto para o qual a autoridade de controle será concedida se o nó de computação 102 perder a autoridade de controle.
[032] O nó de computação 102 pode perder a autoridade de controle ao renunciar ao mesmo de forma voluntária, ou através do fornecimento de um fluxo de dados inválido 124 para monitores de failover 106-110. Em particular, na detecção de um fluxo de dados inválido 124 a partir do nó de computação 102 (por exemplo, o nó de computação de controle), os monitores de failover 106-110 podem iniciar um processo de recomposição de nó de computação 102 através do fornecimento de sinais de reinicialização para o eleitor de reinicialização120. O eleitor de reinicialização 120 pode fornecer um sinal de reinicialização a um nó 102 de acordo com as modalidades exemplificadoras da presente revelação. Em tal cenário, os monitores de failover 106-110 podem selecionar um nó de computação substituto a partir do subconjunto de reserva e iniciar o processo de concessão de controle para o nó de substituição. Uma vez que o nó de reinicialização reestabelecer a comunicação com os monitores de failover 106-110 através do fornecimento de um fluxo de dados válido 124, o nó de reinicialização pode ser adicionado ao subconjunto de reserva. Em alguns empregos, se o nó de reinicialização continua o fornecimento de um fluxo de dados inválido 124, o processo de recomposição pode ser iniciado um ou mais vezes adicionais. Se a quantidade de processo de recomposições alcança um limite, o nó de computação pode ser indicado como com mal funcionamento, e não adicionado ao subconjunto de reserva.
[033] Em alguns empregos, os nós de computação 102,104 e/ou monitores de failover 106-110 podem ser dispositivos de computação que incluem um ou mais processadores e um ou mais dispositivos de memória. Os um ou mais processadores podem incluir quaisquer dispositivos de processamento adequados, como um microprocessador, microcontrolador, circuito integrado, dispositivo de lógica, ou outro dispositivo de processamento adequado. Os um ou mais dispositivos de memória podem incluir um ou mais meios legíveis por computador, incluindo, mas sem limitações, meio legível por computador não transitório, RAM, ROM, discos rígidos, unidades de armazenamento ou outros dispositivos de memória.
[034] Os um ou mais dispositivos de memória podem armazenar informações acessíveis pelos um ou mais processadores, incluindo instruções legíveis por computador que podem ser executadas pelos um ou mais processadores. As instruções podem ser qualquer conjunto de instruções que, quando executadas pelos um ou mais processadores, fazem com que os um ou mais processadores executem operações. As instruções podem ser empregadas em software escritos em qualquer linguagem de programação adequada ou pode ser empregada em discos rígidos. Em algumas modalidades, as instruções podem ser executadas pelos um ou mais processadores para fazer com que os um ou mais processadores executem operações, como uma ou mais operações que correspondem aos sistemas e métodos descritos no presente documento. Os dispositivos de memória podem, adicionalmente, armazenar dados que podem ser acessados pelos processadores.
[035] A tecnologia aqui discutida é direcionada aos sistemas com base em computadores, assim como ações feitas e informações enviadas para e a partir de tais sistemas. Uma pessoa versada na técnica irá reconhecer que a flexibilidade inerente dos sistemas com base em computador permite uma grande variedade de configurações, combinações e divisões possíveis de tarefas e funcionalidade entre e dentre os componentes. Por exemplo, os processos aqui discutidos podem ser empregados com o uso de um único dispositivo ou diversos dispositivos de computadores trabalhando em conjunto. Base de dados, memória, instruções e aplicações podem ser empregadas em um único sistema ou distribuídas por diversos sistemas. Os componentes distribuídos podem operar de forma sequencial ou em paralelo.
[036] Será percebido pelos versados na técnica que o sistema de controle de failover exemplificador 100 mostrado na Figura 1 tem apenas propósito de ilustração, e que diversos outras configurações de sistema de controle adequadas podem ser usadas sem desviar do escopo da presente revelação. Em particular, tais outros controles de sistemas adequados podem incluir um ou mais nós de computação adicionais, portas de monitoramento de failover correspondentes, circuitos de eleitores correspondentes, etc. Um ou mais monitores de failover adicionais podem ser incluídos adicionalmente. Dessa maneira, o controle de failover pode ser fornecido para um sistema de controle que tem mais do que dois nós de computação de acordo com as modalidades exemplificadoras da presente revelação.
[037] A Figura 2 representa uma vista geral de um circuito de eleitor 200 exemplificador de acordo com as modalidades exemplificadoras da presente revelação. O circuito de eleitor 200 pode corresponder a um ou mais dos circuitos de eleitor 112 a 122 da Figura 1. Em particular, o circuito de eleitor 200 pode incluir uma pluralidade de diodos 204 e elementos de comutação 202 em uma configuração de coletor aberto e/ou dreno aberto. Cada elemento de comutação pode receber um sinal de porta de entrada a partir de um monitoramento de failover. Conforme mostrado, o circuito de eleitor 200 pode incluir três pernas que empregam a equação de Booleana associada à ativação da saída. Por exemplo tal estrutura de três pernas do coletor de abertura pode permitir uma saída ativa (por exemplo, através de um caminho de impedância inferior para o solo) ao nó de computação correspondente quando ao menos dois monitoramentos de failover fornecem um sinal com uma tensão suficiente para “ativar” o elemento de comutação correspondente. Em particular, uma perna única pode fornecer um caminho de impedância inferior para o solo quando quaisquer dois monitores de failover fornecem sinais de “ativação”. Todas as três pernas podem fornecer tais caminhos quando todos os três monitores de failover fornecem sinais de “ativação”. Dessa maneira, ao menos dois monitores de failover devem concorrer antes de a saída ser fornecida ao nó de computação correspondente.
[038] Será visto que diversos outros circuitos de eleitor adequados podem ser usados tendo diversas outras estruturas ou configurações adequadas. Por exemplo, um ou mais elementos de comutação adicionais e/ou uma ou mais pernas adicionais podem ser incluídas sem que se desvie do escopo da presente revelação.
[039] A Figura 3 representa um sistema de controle de failover exemplificador 140 de acordo com as modalidades exemplificadoras da presente revelação. O sistema 140 pode incluir um componente de inteligência 142 que pode possibilitar ou auxiliar em diversas interferências ou determinações. Em particular, de acordo com ou em adição ao que foi descrito acima em relação a interferências ou determinação inteligentes fornecidas por diversos componentes aqui descritos. Por exemplo, todo ou porções do sistema de controle de failover 100, como monitores de failover 106 a 110 ou circuitos de eleitor 112 a 122 (assim como outros componentes aqui descritos) podem ser acoplados de forma operacional ao componente de inteligência 142. De forma adicional ou alternativa, todo ou partes do componente de inteligência 142 pode ser incluído em um ou mais componentes aqui descritos. Ademais, o componente de inteligência 142 irá ter acesso de forma típica a todo ou parte de conjunto de dados aqui descritos.
[040] De acordo, a fim de possibilitar ou auxiliar as diversas interferências aqui descritas, o componente de inteligência 142 pode examinar a totalidade ou um subconjunto de dados disponíveis, e pode possibilitar o raciocínio ou inferir estados do sistema, ambiente e/ou usuário a partir de um conjunto de observações conforme capturado através dos eventos e/ou dados. A interferência pode ser empregada para a identificação de um contexto ou ação específica, ou pode gerar uma distribuição de probabilidades sobre os estados, por exemplo. A interferência pode ser de probabilidade - isto é, a computação de uma distribuição de probabilidade sobre os estados de interesse com base em uma consideração de dados e eventos. A interferência pode também fazer referência a técnicas aplicadas para a composição de eventos de nível mais alto a partir de um conjunto de eventos e/ou dados.
[041] Tal interferência pode resultar na construção de novos eventos ou ações a partir de um conjunto de eventos observados e/ou dados de eventos armazenados, e se os eventos são correlacionados em proximidade temporal próxima, e se os eventos e dados vêm a partir de um ou diversos eventos ou fontes de dados. Diversos esquemas e/ou sistemas de classificações (treinadas de forma explícita e/ou implícita) (por exemplo, máquinas de vetor de apoio, redes neutras, sistemas de especialidade, redes Bayesianas de crença, lógica difusa, máquinas de fusão de dados...) podem ser empregados em conexão com a ação de desempenho automático e/ou inferida em conexão com assunto reivindicado.
[042] Um classificador pode ser uma função que mapeia um vetor de atributo de entrada, x = (x1, x2, x3, x4, xn), para uma certeza de que a entrada pertence a uma classe, isto é, f(x) = confidence{class). Tal classificação pode empregar uma análise com base em probabilidade e/ou estatística (por exemplo, entrando na utilidade e custos da análise) para traçar uma previsão ou inferir uma ação que um usuário deseja para ser executada automaticamente. Uma máquina de vetor de suporte (SVM) é um exemplo de um classificador que pode ser empregado. A SVM opera através do descobrimento de uma hipersuperfície no espaço das entradas possíveis, em que a hipersuperfície tenta partir o critério de disparo a partir dos eventos que não geram disparo. De forma intuitiva, isto torna a classificação correta para os dados de teste que estão próximos, mas não idêntico aos dados de treinamento. Outra abordagem de classificação de modelo direta e indireta inclui, por exemplo, Naíve Bayes, rede Bayesiana, árvores de decisão, redes neutras, modelos de lógica difusa e modelos de classificação de probabilidade que fornecem padrões diferentes de independência que podem ser empregados. A classificação conforme usada no presente documento também é inclusiva em regressão de estatística que é utilizada para o desenvolvimento de modelos de prioridade.
[043] A Figura 4 representa um fluxograma de um método exemplificador (300) de fornecimento de autoridade de controle de failover a um ou mais nós de computação em um sistema de controle. O método (300) pode ser empregado por um ou mais dispositivos de computação, como um ou mais dos dispositivos de computação mostrados na Figura 1. Além disso, a Figura 4 representa etapas executadas em uma ordem particular para propósitos de ilustração e discussão. Aqueles versados na técnica, com o uso de apresentações aqui fornecidas, irão compreender que as etapas de qualquer um dos métodos aqui discutidos podem ser adaptadas, reordenadas, expandidas, omitidas ou modificadas de diversas formas sem se desviar do escopo da presente revelação.
[044] No (302), o método (300) inclui o monitoramento de um fluxo de dados a partir de uma pluralidade de nós de computação. Conforme indicado acima, o fluxo de dados pode ser um fluxo de dados contínuo e em série que inclui uma sequência de palavra de dados determinada de acordo com um ou mais algoritmos predeterminados. Os fluxos de dados podem ser indicativos de um estado funcional de nós de computação respectivos. Em particular, um fluxo de dados válido pode indicar um nó de computação saudável em funcionamento, enquanto um fluxo de dados inválido pode indicar um nó de computação que está em mal funcionamento de alguma maneira. Em alguns empregos, os fluxos de dados podem ser monitorados por uma pluralidade de monitores de failover associados a um controlador de failover.
[045] Em (304), o método (300) pode incluir a seleção de um primeiro subconjunto de nós de computação a partir da pluralidade de nós de computação. Por exemplo, o primeiro subconjunto pode corresponder a um ou mais nós de computação para os quais os sinais de concessão de controle serão fornecidos.
[046] A Figura 5 representa um fluxograma de um método exemplificador (400) de seleção de um primeiro subconjunto de nós de computação. O método (400) pode ser empregado por um ou mais dispositivos de computação, como um ou mais dos dispositivos de computação mostrados na Figura 1. Além disso. Figura 5 representa etapas executadas em uma ordem particular para propósitos de ilustração e discussão. Aqueles versados na técnica, com o uso de apresentação aqui fornecidas, irão compreender que as etapas de quaisquer métodos aqui discutidos podem ser adaptadas, reorganizadas, expandidas, omitidas ou modificadas de diversas formas sem que se desvie do escopo da presente revelação.
[047] Em (402), o método (400) pode incluir a identificação de um fluxo de dados válido a partir de um ou mais nós de computação dentre a pluralidade de nós de computação. Um fluxo de dados válido pode corresponder a um fluxo de dados que tem uma sequência e/ou temporização correta, conforme determinado por um ou mais algoritmos. Conforme indicado, em alguns empregos, os um ou mais nós de computação para cada fluxo de dados válidos são identificados e podem corresponder a uma quantidade suficiente de nós de computação com base nas exigências de controle do sistema de controle.
[048] Em (404), o método (400) pode incluir o fornecimento de um pedido de controle aos um ou mais nós de computação dentre a pluralidade de nós de computação. O pedido de controle pode ser um sinal fornecido aos um ou mais nós de computação pedindo que os nós de computação tomem a autoridade de controle sobre o sistema de controle.
[049] Em (406), ο método (400) pode incluir o recebimento de um sinal de prontidão de controle a partir de ao menos um nó de computação dentre os um ou mais nós de computação. Um sinal de prontidão de controle pode indicar que o nó de computação correspondente é capaz de receber a autoridade de controle. Dessa maneira, o sinal de prontidão de controle pode ser fornecido em resposta ao recebimento do pedido de controle.
[050] Em (408), o método (400) pode incluir a seleção de ao menos um nó de computação como um subconjunto de controle. Dessa maneira, o subconjunto de controle pode ser escolhido com base, ao menos em parte, em um dos fluxos de dados dos nós de computação e no sinal de prontidão de controles fornecido pelos nós de computação. Será contemplado que o subconjunto de controle pode corresponder ao primeiro subconjunto para o qual os sinais de concessão de controle serão fornecidos e/ou ao subconjunto de reserva dos nós de computação que são capazes de receber a autoridade de controle mas não receberão inicialmente os sinais de concessão de controle.
[051] Com referência à Figura 4, em (306), o método (300) pode incluir a geração de um ou mais sinais de concessão de controle para cada nó de computação do primeiro subconjunto. Os sinais de concessão de controle podem indicar uma provisão de autoridade de controle aos nós de computação respectivos. Em alguns empregos, a provisão de autoridade de controle pode ser submetida a um processo de “votação”, em que alguma quantidade limite de sinais de concessão de controle deve concorrer.
[052] Por exemplo, em (308), o método (300) pode incluir a ativação de uma saída a um ou mais nós de computação do primeiro subconjunto de nós de computação com base, ao menos em parte, em uma quantidade de sinais de concessão de controle gerada para cada nó de computação do primeiro subconjunto. Por exemplo, nos empregos em que três monitores de failover são usados em um controlador de failover (por exemplo, como um sistema de controle 100 da Figura 1), os sinais de concessão de controle a partir de uma quantidade limite de monitores de failover podem precisar ser recebidos por um circuito de eleitor correspondente antes da saída do nó de computação ser ativado. A quantidade limite pode ser selecionada com base, ao menos em parte, nas exigências de controle e/ou redundância do sistema. Em vários empregos, a quantidade limite pode ser qualquer número até o número de monitores de failover presentes no sistema. Dessa maneira, o circuito de eleitores correspondente pode ser configurado para alcançar esse limite exigido.
[053] Em (310), o método (300) pode incluir a concessão de autoridade de controle aos um ou mais nós de computação do primeiro subconjunto. Por exemplo, a autoridade de controle pode ser concedida através do fornecimento de um sinal de concessão de controle ao nó de computação sobre a saída ativa do circuito de eleitor. Conforme indicado, o sinal de concessão de controle pode indicar ao nó de computação(s) que os nós de computação têm autoridade de controle sobre o sistema. O sinal de concessão de controle pode ser usado adicionalmente pelo nó disco rígido de computação como um sinal capacitador independente para garantir que os nós de computação corretos tenham autoridade de controle em uma saída de conjunto de controles.
[054] Em alguns empregos, se a quantidade de nós de computação para o recebimento de autoridade de controle sobre o sistema não satisfaz as exigências de redundância do sistema, um processo de concessão de controle, de acordo com as modalidades exemplificadoras da presente revelação, pode ser executado para um ou mais nós de computação adicionais a fim de garantir a autoridade de controle aos um ou mais nós de computação adicionais. Por exemplo, os um ou mais nós de computação adicionais podem ser determinados para satisfazer as exigências do controle de redundância do sistema.
[055] Em (312), o método (300) pode incluir a seleção de um subconjunto de reserva de nós de computação. O subconjunto de reserva pode ser um subconjunto de nós de computação capazes de controle (por exemplo, nós de computação que estão fornecendo fluxos de dados válidos). Em alguns empregos, o subconjunto de reserva pode ser selecionado com o uso de uma ou mais dentre as etapas executadas no método (400) da Figura 5. Em particular, o subconjunto de reserva pode ser selecionado com base, ao menos em parte, nos fluxos de dados válidos detectados para um ou mais nós de computação que não têm atualmente autoridade de controle sobre o sistema.
[056] Conforme indicado, uma vez que a autoridade de controle tenha sido concedida a um ou mais nós de computação, os fluxos de dados dos um ou mais nós de computação podem continuar sendo monitorados. Em alguns empregos, a autoridade de controle pode ser removida de um nó de computação com base, ao menos em parte, no fluxo de dados correspondente. A autoridade de controle pode ser removida adicionalmente a partir de um nó de computação se o nó de computação abandona de forma voluntária ou contrariar a autoridade de controle.
[057] Por exemplo, a Figura 6 representa um fluxograma de um método exemplificador (500) de remoção de autoridade de controle a partir de um nó de computação de acordo com as modalidades exemplificadoras da presente revelação. O método (500) pode ser empregado por um ou mais dispositivos de computação, como um ou mais dos dispositivos de computação mostrados na Figura 1. Além disso, a Figura 6 representa etapas executadas em uma ordem particular para propósitos de ilustração e discussão. Aqueles versados na técnica, com o uso da apresentação aqui fornecida, irão compreender que as etapas de quaisquer um dos métodos aqui discutidos podem ser adaptadas, reordenadas, expandidas, omitidas ou modificadas em diversas formas sem se desviar do escopo da presente revelação.
[058] Em (502), o método (500) pode incluir a detecção de um fluxo de dados inválido (por exemplo, um fluxo válido que tenha um ou mais erros de sequência e/ou temporização) a partir de um nó de computação, ou um pedido de autoridade de controle de abandono por um nó de computação. Em alguns empregos, um nó de computação pode requisitar a autoridade de controle de abandono se o nó de computação não tiver os recursos necessários para manter a autoridade de controle no sistema de controle. Em alguns empregos, um nó de computação pode requisitar a autoridade de controle de abandono se o nó de computação detecta um ou mais erros ou mal funcionamento dentro do nó de computação.
[059] Em (504), o método (500) pode incluir a seleção de um nó de computação substituto a partir do subconjunto de reserva. Por exemplo, o nó de substituição pode ser um nó de computação que seja capaz de receber a autoridade de controle sobre o sistema. Em alguns empregos, a seleção de um nó de substituição pode incluir a inicialização de um processo de concessão de controle para o nó de acordo com as modalidades exemplificadoras da presente revelação. Por exemplo, um sinal de pedido de controle pode ser fornecido para o nó e um sinal de prontidão de controle pode ser recebido a partir do nó.
[060] Em (506), o método (500) pode incluir a remoção da autoridade de controle do nó de computação de controle. Em (508), o método (500) pode incluir a concessão da autoridade de controle ao nó de computação substituto. Por exemplo, concessão de autoridade de controle ao nó de substituição pode incluir o emprego de uma ou mais etapas do método (300).
[061] Em (510), o método (500) pode incluir a reinicialização do nó de computação substituído. O node substituído pode ser reinicializado através de um processo de recomposição empregado pelo sistema de controle. Por exemplo, o nó substituído pode ser reinicializado pelo fornecimento de um sinal de controle de reinicialização ao nó de computação através de um circuito de eleitor de reinicialização. Em alguns empregos, o nó pode ser reinicializado com base em ao menos parte de um ou mais pedidos de reinicialização a partir de um ou mais outros nós de computação.
[062] Em (512), o método (500) pode incluir a adição do nó de computação substituído para o subconjunto de reserva. Em alguns empregos, o nó de computação substituído pode ser adicionado ao subconjunto de reserva se um fluxo de dados válido é detectado para o nó de computação subsequente ao processo de recomposição do nó de computação. Em alguns empregos, se um fluxo de dados válido não é detectado (por exemplo, se um fluxo de dados inválido é detectado), o processo de recomposição pode ser repetido uma ou mais vezes adicionais até um limite, ou até que um fluxo de dados válido seja detectado. Se um fluxo de dados válido é detectado, o nó de computação pode, então, ser adicionado ao subconjunto de reserva.
[063] A Figura 7 representa um fluxograma de um método exemplificador 600 para o fornecimento de controle de failover para os nós de processamento de acordo com as modalidades exemplificadoras da presente revelação. Com referência ao número 602, a ativação do sistema ocorre. Com referência ao número 604, uma determinação pode ser feita se uma reinicialização está ocorrendo enquanto um veículo está em voo. Se uma reinicialização não estiver ocorrendo enquanto o veículo estiver em voo (N em 604), então, em 606, cada nó de computação executa seu respectivo Power Up Built-in-test (PBIT).
[064] Em 608, quando um nó de computação completa seu PBIT, então, o nó de computação inicia o fluxo de dados de Batimento Cardíaco para o Controlador de failover (CFO). Por exemplo, o Batimento Cardíaco pode incluir ο envio de um fluxo de palavras de dados computadas de acordo com um algoritmo predeterminado. Adicional mente, a conclusão de PBIT pode incluir a satisfação de u conjunto de critérios de PBIT de grupo de usuário ou predeterminado. Por exemplo, o conjunto de critério de PBIT pode incluir um limite de tempo, um limite de integridade, etc. De volta com referência ao número 604, se a reinicialização estiver ocorrendo enquanto o veículo estiver em voo (Y em 604), então, a metodologia avança para a referência numérica 608.
[065] Na referência numérica 610, uma determinação é feita se o Batimento Cardíaco para cada nó é sustentável. Se o Batimento Cardíaco não é sustentável por um nó de computação (N em 610), então, em 612, o nó de computação é reinicializado, e a metodologia retorna para a referência numérica 604 para o nó de computação. De volta à referência numérica 610, se o Batimento Cardíaco é sustentado por uma quantidade de nós de computação 106 que satisfaz um limite predeterminado (Y em 610), então, em 614, cada monitor de failover (MFC) seleciona, escolhe ou determina de outra forma um nó de computação. Se a maioria dos MFOs alcançar a mesma decisão, então, o nó de computação 106 selecionado é pedido para ser o nó mestre. Por exemplo, o CFO pode afirmar um Master Request para o nó de computação selecionado. Adicionalmente ou alternativamente, cada monitor de failover (MFC) pode selecionar um grupo dos nós de computação, e um subconjunto dos nós de computação pode ser solicitado para ser nó mestre.
[066] Com referência numérica 616, uma determinação é feita se uma indicação de prontidão mestre é recebida a partir do nó selecionado dentro de um período de tempo predeterminado. Por exemplo, o nó selecionado pode afirmar Master_Ready. Se a indicação de prontidão mestre não é recebida com o pedido de tempo predeterminado (N em 616), então, em 618, o pedido para que o nó seja mestre é removido, e a metodologia retorna para 614 para a seleção de outro nó mestre. Por exemplo, o Master_Request para o de computação selecionado pode ser removido pelo CFO. De volta à referência numérica 616, se a indicação de prontidão mestre é recebida dentro do período de tempo predeterminado, então, o nó de computação selecionado é designado como o nó mestre e é dada a autoridade de controle. Por exemplo, Master_Grant pode ser afirmado para o nó de computação 106 selecionado.
[067] Embora características específicas de diversas modalidades possam ser mostradas em alguns desenhos e não em outros, isto se dá apenas por conveniência. De acordo com os princípios da presente revelação, qualquer característica de um desenho pode ser referida e/ou reivindicada em combinação com qualquer característica de qualquer outro desenho.
[068] A presente descrição escrita usa exemplos para apresentação da invenção, incluindo o melhor modo, e também a fim de possibilitar que qualquer pessoa versada na técnica pratique a invenção, incluindo a produção e uso de qualquer dispositivo ou sistemas e a execução de quaisquer métodos incorporados. O escopo patenteável da invenção é definido pelas reivindicações, e pode incluir outros exemplos que ocorreram aos versados na técnica. Tais outros exemplos se destinam a estar dentro do escopo das reinvindicações caso os mesmos incluam elementos estruturais que não se difiram da linguagem literal das reivindicações, ou caso os mesmos incluam elementos estruturais equivalentes com diferenças substanciais a partir das linguagens literais das reivindicações.
Lista de componentes 100 Sistema de Controle 102 Nó de computação 104 Nó de computação 106 Monitor de Failover 108 Monitor de Failover 110 Monitor de Failover 112 Eleitor de Pedido de Controle 114 Eleitor de Pedido de Controle 116 Eleitor de Concessão de Controle 118 Eleitor de Concessão de Controle 120 Eleitor de Reinicialização 122 Eleitor de Reinicialização 124 Fluxo de Dados 126 Sinal de Prontidão de Controle 140 Sistema de Controle 142 Componente de Inteligência 200 Circuito de Eleitor 202 Elementos de Comutação 204 Diodos 300 Método 302 Etapa de Método 304 Etapa de Método 306 Etapa de Método 308 Etapa de Método 310 Etapa de Método 312 Etapa de Método 400 Método 402 Etapa de Método 404 Etapa de Método 406 Etapa de Método 408 Etapa de Método 500 Método 502 Etapa de Método 504 Etapa de Método 506 Etapa de Método 508 Etapa de Método 510 Etapa de Método 600 Método 602 Etapa de Método 604 Etapa de Método 606 Etapa de Método 608 Etapa de Método 610 Etapa de Método 612 Etapa de Método 614 Etapa de Método 616 Etapa de Método 618 Etapa de Método 620 Etapa de Método Reivindicações

Claims (20)

1. MÉTODO DE FORNECIMENTO DE CONTROLE DE FAILOVER em um sistema de computação, caracterizado pelo fato de que o método compreende: monitoramento de um fluxo de dados gerado por uma pluralidade de nós de computação em um sistema de computação; e seleção de um primeiro subconjunto dentre a pluralidade de nós de computação com base, ao menos em parte, nos fluxos de dados monitorados; geração de um ou mais sinais de concessão de controle para cada nó de computação do primeiro subconjunto; ativação de uma saída para um ou mais nós de computação do primeiro subconjunto com base, ao menos em parte, em uma quantidade de sinais de concessão de controle gerados para cada nó de computação do primeiro subconjunto; e concessão de autoridade de controle do sistema de computação para os um ou mais nós de computação do primeiro subconjunto.
2. MÉTODO, de acordo com a reivindicação 1, caracterizado pelo fato de que a seleção de um primeiro subconjunto da pluralidade de nós de computação compreende: identificação de um fluxo de dados válido a partir de um ou mais nós de computação dentre a pluralidade de nós de computação; fornecimento de um sinal de pedido de controle aos um ou mais nós de computação dentre a pluralidade de nós de computação; recebimento de um sinal de prontidão de controle a partir de ao menos um nó de computação dentre os um ou mais nós de computação da pluralidade de nós de computação; e seleção de ao menos um nó de computação como o primeiro subconjunto de nós de computação.
3. MÉTODO, de acordo com a reivindicação 2, caracterizado pelo fato de que a identificação de um fluxo de dados válido compreende a comparação de uma sequência de palavras de dados no fluxo de dados a uma sequência predeterminada de palavras de dados.
4. MÉTODO, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente; subsequente à concessão de autoridade de controle do sistema de computação aos um ou mais nós de computação do primeiro subconjunto, a identificação de ao menos um nó de computação com capacidade de controle que não tenha tido autoridade de controle do sistema de computação concedida; e seleção do ao menos um nó de computação com capacidade de controle como um segundo subconjunto da pluralidade de nós de computação.
5. MÉTODO, de acordo com a reivindicação 4, caracterizado pelo fato de que a identificação de ao menos um nó de computação com capacidade de controle compreende a identificação de um fluxo de dados válido a partir de ao menos um nó de computação que não tenha tido autoridade de controle do sistema de computação concedida;
6. MÉTODO, de acordo com a reivindicação 4, caracterizado pelo fato de que compreende adicionalmente: detecção de um fluxo de dados inválido a partir de um nó de computação que tenha tido autoridade de controle do sistema de computação concedida; remoção da autoridade de controle do sistema de computação a partir do nó de computação que corresponde ao fluxo de dados inválido; e concessão de autoridade de controle do sistema de computação a um nó de computação do segundo subconjunto.
7. MÉTODO, de acordo com a reivindicação 4, caracterizado pelo fato de que compreende adicionalmente: recebimento de um sinal a partir de um nó de computação que tenha tido autoridade de controle do sistema de computação indicativo de um pedido para abandonar a autoridade de controle concedida; remoção da autoridade de controle do sistema de computação do nó de computação; concessão de autoridade de controle do sistema de computação a um nó de computação do segundo subconjunto.
8. MÉTODO, de acordo com a reivindicação 6, caracterizado pelo fato de que compreende adicionalmente a reinicialização do nó de computação que corresponde ao fluxo de dados inválido.
9. MÉTODO, de acordo com a reivindicação 8, caracterizado pelo fato de que compreende adicionalmente: subsequente à reinicialização do nó de computação, a identificação de um fluxo de dados válido a partir do nó de computação de reinicialização; e adição do nó de computação ao segundo subconjunto.
10. MÉTODO, de acordo com a reivindicação 8, caracterizado pelo fato de que compreende adicionalmente o recebimento de um pedido a partir de ao menos um nó de computação adicional para reinicializar o nó de computação que corresponde ao fluxo de dados inválido; e em que a reinicialização do nó de computação compreende a reinicialização do nó de computação com base, ao menos em parte, no pedido do ao menos um nó de computação adicional.
11. MÉTODO, de acordo com a reivindicação 1, caracterizado pelo fato de que cada fluxo de dados monitorado compreende um fluxo de dados contínuo em série determinado de acordo com um ou mais algoritmos predeterminados.
12. MÉTODO, de acordo com a reivindicação 1, caracterizado pelo fato de que o sistema de computação compreende um sistema aviônico de computação associado a uma aeronave.
13. SISTEMA DE CONTROLE DE FAILOVER para a concessão de autoridade de controle de um sistema de computação a nós de computação, caracterizado pelo fato de que o sistema compreende: uma pluralidade de nós de computação; um controlador de failover configurado para a concessão de autoridade de controle para ao menos um dos nós de computação, sendo que o controlador de failover compreende: uma pluralidade de monitores de failover configurados para o monitoramento de um fluxo de dados a partir de cada nó de computação, a seleção de um primeiro subconjunto dentre a pluralidade de nós de computação com base, ao menos em parte, no fluxo de dados monitorado, e a geração de um ou mais sinais de concessão de controle para ao menos um nó de computação do primeiro subconjunto; e uma pluralidade de circuitos de eleitor de controle, sendo que cada circuito de eleitor de controle é acoplado entre a pluralidade de monitores de failover e um nó de computação, sendo que cada circuito de eleitor de controle é configurado para a concessão de autoridade de controle ao nó de computação correspondente quando o circuito de eleitor de controle recebe ao menos dois sinais de concessão de controle a partir da pluralidade de monitores de failover.
14. SISTEMA DE CONTROLE DE FAILOVER, de acordo com a reivindicação 13, caracterizado pelo fato de que a pluralidade de monitores de failover é configurada para a seleção de um primeiro subconjunto dentre a pluralidade de nós de computação através de: identificação de um fluxo de dados válido a partir de um ou mais nós de computação dentre a pluralidade de nós de computação: fornecimento de um sinal de pedido de controle para os um ou mais nós de computação dentre a pluralidade de nós de computação; recebimento de um sinal de prontidão de controle a partir de ao menos um nó de computação dentre os um ou mais nós de computação da pluralidade de nós de computação: e seleção do ao menos um nó de computação como o primeiro subconjunto dos nós de computação.
15. SISTEMA DE CONTROLE DE FAILOVER, de acordo com a reivindicação 14, caracterizado pelo fato de que a identificação de um fluxo de dados válido compreende a comparação de uma sequência de palavras de dados no fluxo de dados a uma sequência predeterminada de palavras de dados.
16. SISTEMA DE CONTROLE DE FAILOVER, de acordo com a reivindicação 13, caracterizado pelo fato de que a pluralidade de monitores de failover é configurada adicionalmente para: subsequente á concessão de autoridade de controle do sistema de computação aos um ou mais nós de computação do primeiro subconjunto, a identificação de ao menos um nó de computação com capacidade de controle que não tenha tido autoridade de controle do sistema de computação concedida; e seleção do ao menos um nó de computação com capacidade de controle como um segundo subconjunto da pluralidade de nós de computação.
17. SISTEMA DE CONTROLE DE FAILOVER, de acordo com a reivindicação 13, caracterizado pelo fato de que cada circuito de eleitor de controle é configurado para a concessão de autoridade de controle ao nó de computação correspondente quando o circuito de eleitor de controle recebe sinais de concessão de controle a partir de ao menos uma maioria dentre a pluralidade de monitores de failover.
18. SISTEMA DE CONTROLE PARA UMA AERONAVE, caracterizado pelo fato de que o sistema de controle compreende: uma pluralidade de nós de computação; um controlador de failover configurado para a concessão de autoridade de controle para ao menos um nó de computação, sendo que o controlador de failover compreende: uma pluralidade de monitores de failover configurados para o monitoramento de um fluxo de dados a partir de cada nó de computação, a seleção de um primeiro subconjunto da pluralidade de nós de computação com base, ao menos em parte, no fluxo de dados monitorado, e a geração de um ou mais sinais de concessão de controle para ao menos um nó de computação do primeiro subconjunto; e uma pluralidade de circuitos de eleitor de controle, sendo que cada circuito de eleitor de controle é acoplado entre a pluralidade de monitores de failover e um nó de computação, sendo que cada circuito de eleitor de controle é configurado para a concessão de autoridade de controle ao nó de computação correspondente quando o circuito de eleitor de controle recebe sinais de concessão de controle a partir de ao menos uma maioria dentre a pluralidade de monitores de failover.
19. SISTEMA DE CONTROLE, de acordo com a reivindicação 18, caracterizado pelo fato de que a pluralidade de monitores de failover é configurada para a seleção de um primeiro subconjunto da pluralidade de nós de computação através de: identificação de um fluxo de dados válido a partir de um ou mais nós de computação dentre a pluralidade de nós de computação; fornecimento de um sinal de pedido de controle aos um ou mais nós de computação dentre a pluralidade de nós de computação; recebimento de um sinal de prontidão de controle a partir de ao menos um nó de computação dentre os um ou mais nós de computação da pluralidade de nós de computação: e seleção do ao menos um nó de computação como o primeiro subconjunto de nós de computação.
20. SISTEMA DE CONTROLE, de acordo com a reivindicação 19, caracterizado pelo fato de que a identificação de um fluxo de dados válido compreende a comparação de uma sequência de palavras de dados no fluxo de dados a uma sequência de palavras de dados.
BR102016009626A 2015-04-30 2016-04-29 método de fornecimento de controle de failover e sistemas de controle de failover e de controle para uma aeronave BR102016009626A2 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562154918P 2015-04-30 2015-04-30
US15/095,285 US10169175B2 (en) 2015-04-30 2016-04-11 Providing failover control on a control system

Publications (1)

Publication Number Publication Date
BR102016009626A2 true BR102016009626A2 (pt) 2016-11-01

Family

ID=55913488

Family Applications (1)

Application Number Title Priority Date Filing Date
BR102016009626A BR102016009626A2 (pt) 2015-04-30 2016-04-29 método de fornecimento de controle de failover e sistemas de controle de failover e de controle para uma aeronave

Country Status (1)

Country Link
BR (1) BR102016009626A2 (pt)

Similar Documents

Publication Publication Date Title
US10169175B2 (en) Providing failover control on a control system
US8108733B2 (en) Monitoring distributed software health and membership in a compute cluster
EP3493062B1 (en) Data processing system having lockstep operation
CN108780412B (zh) 计算系统中的存储器备份管理
US10761925B2 (en) Multi-channel network-on-a-chip
US6550017B1 (en) System and method of monitoring a distributed fault tolerant computer system
BR102015020326A2 (pt) servidor compreendendo uma pluralidade de módulos
US8671311B2 (en) Multiprocessor switch with selective pairing
US9104644B2 (en) Operating method of software fault-tolerant handling system
US9348657B2 (en) Method and system of synchronizing processors to the same computational point
US11099961B2 (en) Systems and methods for prevention of data loss in a power-compromised persistent memory equipped host information handling system during a power loss event
BR102016004145A2 (pt) aparelho, e, método para controlar um atuador
EP3335382B1 (en) Fault tolerance in distributed graph processing networks
US20160026166A1 (en) Method and apparatus for controlling a physical unit in an automation system
US20140143597A1 (en) Computer system and operating method thereof
JP2022088346A (ja) コア同期のためのデバッグトレースストリーム
US10860411B2 (en) Automatically detecting time-of-fault bugs in cloud systems
BR102016009626A2 (pt) método de fornecimento de controle de failover e sistemas de controle de failover e de controle para uma aeronave
BR112019014536A2 (pt) Diagnóstico não intrusivo periódico de sistemas de lockstep
US9798608B2 (en) Recovery program using diagnostic results
US10203890B1 (en) Multi-tier mechanism to achieve high availability in a multi-controller system
US11010269B2 (en) Distributed processing system and method for management of distributed processing system
US11042443B2 (en) Fault tolerant computer systems and methods establishing consensus for which processing system should be the prime string
Zhou et al. Formal verification of fault-tolerant and recovery mechanisms for safe node sequence protocol
Nya et al. Self-aware and self-expressive driven fault tolerance for embedded systems

Legal Events

Date Code Title Description
B03A Publication of an application: publication of a patent application or of a certificate of addition of invention
B06U Preliminary requirement: requests with searches performed by other patent offices: suspension of the patent application procedure
B11B Dismissal acc. art. 36, par 1 of ipl - no reply within 90 days to fullfil the necessary requirements