WO2022144368A1 - Procédé de contrôle d'un ensemble de cartes de calcul d'un serveur multimédia embarqué à bord d'un aéronef, programme d'ordinateur, dispositif électronique de contrôle, et serveur multimédia associés - Google Patents
Procédé de contrôle d'un ensemble de cartes de calcul d'un serveur multimédia embarqué à bord d'un aéronef, programme d'ordinateur, dispositif électronique de contrôle, et serveur multimédia associés Download PDFInfo
- Publication number
- WO2022144368A1 WO2022144368A1 PCT/EP2021/087749 EP2021087749W WO2022144368A1 WO 2022144368 A1 WO2022144368 A1 WO 2022144368A1 EP 2021087749 W EP2021087749 W EP 2021087749W WO 2022144368 A1 WO2022144368 A1 WO 2022144368A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- card
- calculation
- cards
- selected card
- software function
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000004590 computer program Methods 0.000 title claims description 16
- 230000006870 function Effects 0.000 claims abstract description 155
- 238000004364 calculation method Methods 0.000 claims description 168
- 230000005540 biological transmission Effects 0.000 claims description 38
- 238000012217 deletion Methods 0.000 claims description 36
- 230000037430 deletion Effects 0.000 claims description 36
- 230000015654 memory Effects 0.000 claims description 18
- 238000001514 detection method Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 15
- 239000002245 particle Substances 0.000 description 9
- 238000013500 data storage Methods 0.000 description 8
- 230000005764 inhibitory process Effects 0.000 description 8
- 238000013475 authorization Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 230000007257 malfunction Effects 0.000 description 4
- 230000002401 inhibitory effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64D—EQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENT OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
- B64D11/00—Passenger or crew accommodation; Flight-deck installations not otherwise provided for
- B64D11/0015—Arrangements for entertainment or communications, e.g. radio, television
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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/2023—Failover techniques
- G06F11/203—Failover techniques using migration
Definitions
- TITLE Process for controlling a set of calculation cards of a multimedia server on board an aircraft, computer program, electronic control device, and associated multimedia server
- the present invention relates to a method for controlling a set of calculation cards of a multimedia server intended to be on board an aircraft.
- the invention also relates to a computer program comprising software instructions which, when executed by a computer, implement such a control method.
- the invention also relates to a multimedia server intended to be on board an aircraft, the server comprising a set of calculation cards, at least one of which is capable of executing such a computer program.
- the invention also relates to an electronic device for controlling a set of calculation cards of a multimedia server intended to be on board an aircraft.
- the invention then relates to the field of entertainment systems for aircraft, also called in-flight entertainment systems IFE (In Flight Entertainment) which are mainly found on board long-haul commercial aviation aircraft.
- IFE In Flight Entertainment
- Such an IFE system comprises a plurality of entertainment terminals, also called user terminals, generally in the form of individual screens or tablets.
- Each entertainment terminal is integrated for example in the passenger seat or in the seat in front thereof.
- these terminals allow the passenger to consult multimedia content during the flight (for example films, TV shows, games, or music) and to be informed about the progress of the flight (altitude, speed, current position, progress, etc.).
- multimedia content for example films, TV shows, games, or music
- these terminals also make it possible to provide certain practical information concerning, for example, the arrival airport and to broadcast announcements made by the crew in sound and/or video form.
- the entertainment terminals are generally connected by a wired or wireless network, an on-board multimedia server also forming part of the IFE system.
- each terminal accesses the on-board multimedia server via the network.
- an error occurring on the multimedia server is liable to cause an alteration of the content which, in certain cases, is then no longer broadcast via the terminals.
- NFF No Failure Found
- the object of the invention is therefore to propose a method for controlling a set of calculation cards of a multimedia server, an electronic control device and an associated computer program, making it possible to correct errors of the NFF type more effectively.
- the subject of the invention is a method for controlling a set of calculation cards of a multimedia server intended to be on board an aircraft, each calculation card being intended to execute at least one function software, the method being implemented by an electronic control device and comprising:
- a step of transmitting a restart instruction to the selected card a step of transmitting a restart instruction to the selected card.
- NFF errors often result from malfunctions appearing in a volatile memory of the calculation cards of the multimedia server. These malfunctions are, for example, disturbances by an isolated SEU (Single Event Upset) particle. Such a malfunction is likely to cause data corruption leading to random effects, ranging from immediate failure, to slow propagation through the media server. It is known that a media server in use is susceptible to up to one disturbance by a single particle every thousand hours of flight. Thus, such malfunctions occur several times a year for each aircraft.
- SEU Single Event Upset
- the method according to the invention therefore makes it possible to limit the number of errors N FF by acting on the disturbances by an isolated particle affecting a multimedia server intended to be on board an aircraft.
- control process allows a restart of the calculation cards, thus limiting the appearance of NFF error(s) and the propagation of disturbances by an isolated particle, while guaranteeing continuity of the processing of the software functions.
- control method does not disturb the transmission of content(s) between the multimedia server and the entertainment terminals because the software functions awaiting execution on the selected card are copied to the other calculation cards, which are able to execute them during the restart of the selected card.
- control method comprises one or more of the following characteristics, taken in isolation or in all technically possible combinations:
- the piloting step includes the following sub-steps:
- the piloting step further comprises, between the sub-step of sending the first copy instruction and the sub-step of sending the first deletion instruction, a sub-step of receiving, from the selected card , a completion signal for the execution of each of the software functions being executed on said selected card, the sub-step of sending the first deletion instruction being carried out following receipt of the completion signal or following the expiry of a first predefined time delay, and the first deletion instruction is then an instruction to delete all the software functions of the selected card, - after the step of transmitting a restart instruction, a second step of controlling a reassignment, to the selected card, of at least one software function awaiting execution by a calculation card other than the card selected,
- the second piloting step includes the following sub-steps:
- each calculation card comprises at least one processor and a random access memory
- the calculation capacity is determined from a quantity representative of the availability of the at least one processor and of a quantity of available memory of the random access memory, and the computational need of each software function being expressed as a function of said quantity and of said quantity of available memory.
- the invention also relates to a computer program product comprising software instructions which, when they are executed by a computer, implement a control method, as defined above.
- the invention also relates to a multimedia server intended to be on board an aircraft, the multimedia server comprising a set of calculation cards, at least one of the calculation cards being capable of executing such a program of computer.
- the multimedia server comprises the characteristic according to which at least two of the calculation cards comprise the computer program, the set of calculation cards being configured to elect one of the calculation, called master card, among those comprising the computer program, the master card then being suitable for executing said computer program.
- the invention also relates to an electronic device for controlling a set of calculation cards of a multimedia server intended to be on board an aircraft, each calculation card being intended to execute at least one software function, the electronic control device comprising:
- a selection module configured to select a calculation card from among the set of calculation cards
- control module configured to control a reassignment, to one or more calculation cards other than the selected card, of one or each software function awaiting execution by the selected card
- a transmission module configured to, following the reassignment, send a restart instruction to the selected card.
- Figure 1 is a schematic view of an electronic box forming a multimedia server, the box comprising a backplane card and a plurality of electronic cards connected to the backplane card, the box being on board an aircraft ;
- Figure 2 is a schematic view of three calculation cards included in the electronic box of Figure 1;
- FIG. 3 is a flowchart of a control method according to the invention, the method being implemented by an electronic control device included in at least one calculation card of FIG. 2;
- Figure 4 illustrates the successive steps of the control method according to the invention.
- FIG. 1 partially represents an aircraft 10 comprising a multimedia server 15.
- the aircraft 10 is preferably an airplane, in particular a commercial aviation airplane, such as a long-haul airplane.
- the aircraft 10 is capable of transporting passengers, in particular a few dozen passengers, or even a few hundred passengers.
- Each entertainment system on board the aircraft 10 is configured to broadcast multimedia content to the passengers of the aircraft 10, in particular when of the flight (for example films, TV shows, games or music), and/or information on the progress of the flight (altitude, speed, current position, progress, etc.) for example via one or more entertainment terminals not shown.
- the flight for example films, TV shows, games or music
- information on the progress of the flight for example via one or more entertainment terminals not shown.
- the entertainment system is configured to broadcast practical information concerning, for example, the arrival airport, for example via announcements in sound and/or video form.
- Each entertainment terminal is known per se, and is connected to the multimedia server 15 via a local network, not shown, on board the aircraft 10.
- Each entertainment terminal is for example fixed or integrated into the actual passenger seat, or else is fixed or integrated into the back of the seat located in front of the passenger seat.
- the seats are typically arranged in rows within the aircraft 10.
- Each entertainment terminal also called user terminal, comprises an HMI man/machine interface, a processing module, an application module and a telecommunications module.
- the human/machine interface HMI comprises for example a touch screen, or a screen and a keyboard.
- the application module comprises one or more application blocks.
- the telecommunications module comprises a control block and one or more telecommunications interfaces suitable for transmitting and receiving data.
- the processing module is suitable for controlling and coordinating the operation of the application module, the human/machine interface HMI and the telecommunications module.
- it comprises a processor and a memory, for example a hard disk or any other storage space capable of storing computer content received in particular via the telecommunications module.
- Each entertainment terminal is suitable for delivering to passengers the content offered by the in-flight entertainment system.
- the processing module is adapted to identify that a menu for selecting one of the applications must be displayed, for example a list of movies. Then, upon detection of the selection of a film by the passenger, the processing module is adapted to trigger the display of the film on the screen.
- the content delivered by applications can be diverse: multimedia content, for example films, TV shows, games or music, flight parameters (altitude, speed, etc.) and sound progress (for example using a “movie map”), announcements (audio and/or video) from the crew.
- the screen is capable of displaying images corresponding to computer content distributed from the multimedia server 15. More specifically, the computer content is received via the telecommunications module from the multimedia server 15 in the form of a broadcast stream (streaming) or else stored in the memory of the terminal, after having been previously downloaded from the multimedia server 15, via said telecommunications module.
- the computer content is received via the telecommunications module from the multimedia server 15 in the form of a broadcast stream (streaming) or else stored in the memory of the terminal, after having been previously downloaded from the multimedia server 15, via said telecommunications module.
- the multimedia server 15 is for example made in the form of an electronic box 26 comprising a backplane card 28, several electronic cards 30, 31, 32, among which at least one network switch card 30, optionally one or more data storage 31 and several calculation cards 32.
- the server 15 further comprises one or more power supply cards 34.
- Each electronic board 30, 31, 32, and each power supply board 34 are each respectively connected to the backplane board 28 via a respective backplane connector 36, as shown in FIG. 1.
- the electronic box 26 comprises furthermore a protective box 38 inside which are housed the backplane card 28 and the plurality of network switch card(s) 30, storage cards 31, calculation cards 32 and network card(s) power supply 34, and external connectors 40 arranged on the periphery of the box 38.
- the external connectors 40 are intended in particular for the connection of the multimedia server 15 to the on-board local area network, as well as to an on-board electrical power supply network. the aircraft 10.
- the multimedia server 15 preferably comprises several cards 30, 31, 32, 34 of the same functional type chosen from the group consisting of: a network switch card 30, also denoted SW, a data storage card 31, also denoted S , a calculation card 32, also denoted C, and a power supply card 34, also denoted P, visible in Figure 1.
- the multimedia server 15 comprises two network switch cards 30, a data storage card 31, four calculation cards 32 and two power supply cards 34.
- the calculation cards 32 are arbitrarily named respectively, first calculation card Ci, second calculation C2, third calculation card C3, and fourth calculation card C4.
- the multimedia server 15 comprises six calculation cards 32.
- the local area network on board the aircraft 10 is a wire-only network, or a partially wired and partially wireless network, or even a wireless-only network.
- the multimedia server 15 is for example connected by wire to an entertainment terminal of each row of seats, said terminal connected by wire to the multimedia server 15 is then connected via wireless links to the other terminals in the row of seats.
- Each wireless link is for example a radioelectric link, such as a link conforming to at least one of the versions of the IEEE 802.11 standard, also called the Wi-FiTM standard, or else a link conforming to the Li-Fi standard TM, for example to the IEEE 802.15.7 standard.
- Each electronic card 30, 31, 32 is, for example, of the functional type network switch card SW, or data storage card S, or even calculation card C.
- each electronic card 30, 31, 32 is of a unique functional type among the group consisting of: network switch card SW, data storage card S, calculation card C.
- Each network switch card 30 is configured to manage communications with the local network, in a manner known per se.
- Each network switch card 30 is able to carry out a switching of data between the local network, on the one hand, and the other electronic cards 31, 32 on the other hand, that is to say to implement a functionality of network switching (switch) such as Ethernet switching, according to a technique known per se and for example described in application FR 19 12615 filed on November 12, 2019.
- switch network switching
- each data storage card 31 is a card dedicated to the storage of data, in particular computer content intended to be distributed to entertainment terminals.
- Data storage card 31 typically includes one or more mass storage memories.
- the set of calculation cards 32 is configured to elect, for example randomly, a master card, hereinafter denoted CM, from among the set of calculation cards 32.
- the set of calculation cards 32 comprises a master card C and three other calculation cards 32.
- the elected master card CM is the fourth calculation card C4.
- each calculation card 32 comprises a central processing unit 45 or CPU (English Central Processing Unit), a random access memory 50 or RAM (English Random Access Memory) and a unit of data storage 55, such as read only memory or ROM.
- CPU Central Processing Unit
- RAM Random Access Memory
- the central processing unit 45 includes for example one or more processors capable of performing tasks, also called functions or functionalities.
- each calculation card 32 defines a volatile memory, partially included in the central processing unit 45 and in the random access memory 50.
- the volatile memory stores data suitable for being erased during a restart of the card 32.
- Each ROM 55 is capable of storing a plurality of software functions 60 suitable for being executed by the central processing unit 45.
- each software function 60 is either being executed by the respective calculation card 32, ie by the respective central processing unit 45 of the card 32, as shown with black filling, or awaiting execution by the respective calculation card 32, as represented with a filling in white.
- Each software function 60 is for example a micro-service orchestrated according to a Kubernetes system from the Google company, Docker Swarm from the Docker, Inc. company, or Nomad from the HashiCorp company.
- micro-service or unitary service
- a software function 60 capable of being executed independently of the others.
- a unitary service is for example movable from one calculation card 32 to another.
- the ROM 55 includes an electronic control device 65.
- the electronic control device 65 comprises a selection module 70, a first piloting module 75 and a transmission module 80.
- control device 65 also comprises a generation module 85, a detection module 90 and a second piloting module 95.
- the control device 65 is included in the ROM 55 of each calculation card 32.
- the selection module 70, the first control module 75 and the transmission module 80, and optionally the generation module 85, the detection module 90, and the second piloting module 90 are each produced in the form of software, or a software brick, executable by the unit central processing unit 45.
- These modules 70, 75, 80, 85, 90 are then stored in the ROM 65 in the form of selection software, first control software, transmission software, and optionally generation software, detection software, and second control software.
- control device 65 is a separate electronic device connected to each calculation card 32.
- the selection module 70, the first piloting module 75 and the transmission module 80, and optionally the module of generation 85, the detection module 90 and the second control module 90 are each made in the form of a programmable logic component, such as an FPGA (Field Programmable Gate Array), or even in the form of a a dedicated integrated circuit, such as an ASIC (Application Specific Integrated Circuit).
- the electronic control device 65 When the electronic control device 65 is produced in the form of one or more software, that is to say in the form of a computer program, it is also capable of being recorded on a medium, not shown, computer readable.
- the readable medium by computer is, for example, a medium able to memorize electronic instructions and to be coupled to a bus of a computer system.
- the readable medium is an optical disc, a magneto-optical disc, a ROM memory, a RAM memory, any type of non-volatile memory (for example EPROM, EEPROM, FLASH, NVRAM), a magnetic card or an optical card.
- On the readable medium is then stored a computer program comprising software instructions.
- the selection module 70 is configured to select a calculation card Ci, C2, C3, or C4, among the set of calculation cards 32.
- the calculation card 32 selected by the selection module 70 is named selected card in the continuation of the description.
- the selection module 70 is configured to select each of the calculation cards 32 in turn according to a predefined sequence repeating cyclically. This predefined sequence is for example the following sequence: first calculation card Ci, then second calculation card C2, then third calculation card C3, then fourth calculation card C4. Another predefined sequence would be: second calculation card C2, then third calculation card C3, then first calculation card Ci, then second calculation card C2, and finally fourth calculation card C4.
- Those skilled in the art will recognize that it is not necessary for each calculation card 32 to be selected on average the same number of times. However, the method will be all the more effective if each calculation card 32 is selected at least once.
- the selection module 70 is configured to randomly select one of the calculation cards 32 at random, from among the set of calculation cards 32.
- the card selected is the first calculation card Ci.
- the master card CM is selectable by the selection module 70 and then able to form the selected card.
- the same calculation card 32 forms both the master card C and the selected card will be described below in the form of a variant.
- the first control module 75 is configured to control a reassignment, to one or more calculation cards 32 other than the selected card, of one or each software function 60 awaiting execution by the selected card.
- the first driver module 75 includes a first sending unit 100, a receiving unit 105, and a second sending unit 110.
- the first sending unit 100 is configured to send, to the selected card, a first copy instruction, on at least one calculation card 32 other than the selected card, of the or each software function 60 awaiting execution by the map selected.
- the first sending unit 100 is configured to send, to the selected card, via the first copy instruction, a first table generated by the generation module 85.
- the first table associates with each software function 60 awaiting execution by the selected card, called target function, a calculation card 32 other than the selected card, called target card, on which to copy the target function.
- Each calculation card 32 implements an autonomous copy functionality, stored in the ROM 55, configured for, following the reception, via the first copy instruction, of the first table, to copy, the or each target function, on the card associated target in the first table.
- the first sending unit 100 is configured to send to the selected card and for each target function of the first table, a respective first copy instruction comprising an identifier of said target function and an identifier of the associated target card.
- each calculation card 32 then implements a unit copy functionality, stored in the ROM 55, configured for, following the reception, via a first respective copy instruction, of a pair of target function identifiers and target board, copy the or each target function to the associated target board.
- the first sending unit 100 is also configured to send, to the selected card, an assignment inhibition instruction, to the selected card, of respective software function(s) 60(s).
- Each calculation card 32 then implements an inhibition functionality, stored in the ROM 55, configured to, following receipt of the inhibition instruction, inhibit any new assignment(s), to the calculation card 32, function (s) software (s) 60 respective (s).
- the denomination "assignment” is understood as synonymous with the denomination "assignment”. In other words, following the reception, by the selected card, of the inhibition instruction, any assignment to the selected card of a new respective software function 60 is prohibited.
- the reception unit 105 is configured to receive, from the selected card, a first completion signal indicating that the execution of each software function being executed has been completed, i.e. terminated.
- the second sending unit 110 is configured to send, to the selected card, a first instruction for deleting the or each software function 60 previously copied onto at least one calculation card 32 other than the selected card.
- Each calculation card 32 implements an autonomous deletion functionality configured to, following receipt of the first deletion instruction, delete, on its own, the or each software function 60 having been copied to another calculation card 32, this deletion being carried out according to the first table.
- the second sending unit 110 is configured to send the first deletion instruction following the reception, by the receiving unit 105, of the first completion signal, or following the expiry of a predefined time delay. .
- the delete stand-alone functionality is configured to, upon receipt of the first delete instruction, delete all 60 software functions on the selected board.
- the second sending unit 110 is configured to send the first deletion instruction following receipt of the completion signal or expiry of the predefined timer and the copying, by the autonomous copy functionality, of each target function.
- the autonomous deletion functionality is then configured to delete each target function of the selected card.
- the second sending unit 110 is configured to send the first delete instruction only after the receipt of the completion signal or the expiration of the predefined timer.
- the autonomous delete functionality is then configured to delete each target feature after receiving the first delete instruction and copying each target feature to the respective target board.
- the transmission module 80 is configured to transmit a restart instruction to the selected card, in particular following the sending of the first deletion instruction by the second sending unit 110.
- Each calculation card 32 implements a restart functionality configured to, following receipt of the restart instruction, command a restart of said calculation card 32.
- the denomination restart is understood here in the sense of an electrical restart, or even a hardware reset of the respective calculation card 32.
- the calculation card 32 is powered off for a predefined period.
- the predefined duration is for example equal to 5 seconds.
- the generation module 85 is configured to generate the first table, also called the first reassignment table, associating with each software function 60 intended to be copied, a calculation card 32 on which the function 60 is to be copied.
- the generation module 85 is configured to generate the first table associating each target function with a respective target map.
- the target card is also called the destination card.
- the generation module 85 is configured to generate a second table associating a set of software function(s) intended to be copied onto the selected card, with each calculation card 32 from which the function(s) are intended to be copied.
- Each calculation card 32 present in the second table is also called starting card or source card.
- Each software function 60 present in the second table is also called a source function.
- the second table associates with each source function intended to be copied onto the selected card after its restart, a respective source card from which to copy said source function.
- the generation module 85 comprises a unit 115 for estimating a computing need for each software function 60 intended to be copied, a unit for determining 120 a computing capacity of each computing card 32, and a establishment unit 125 configured to establish the first table.
- the estimation unit 115 is configured to estimate the computational need of each software function 60 intended to be copied, i.e. each source and target function. To this end, the estimation unit is configured, for each software function 60 awaiting execution, to estimate said computational need in the form of a quantifiable quantity representative of a computation capacity by a central processing unit 45 respective and a quantity of memory of the RAM 55, required for the execution of said function.
- the quantifiable quantity is for example expressed in flops, preferably in Mflops, Gflops or Tflops.
- the quantifiable quantity typically corresponds to a processor utilization rate, in particular when all the calculation cards 32 have identical calculation capacities.
- the amount of memory of RAM 55 is also referred to as amount of RAM.
- each calculation card 32 comprises a central processing unit 45 offering the same performance as that of another card 32
- the utilization rate is expressed as a percentage of maximum CPU load, also called CPU fraction, that is i.e. a fraction of a maximum capacity of the central processing unit 45.
- the quantity of RAM available is for example expressed in Mbits or in Gbits.
- the determination unit 120 is configured to determine the calculation capacity of each calculation card 32. To this end, the determination unit 120 is configured to determine this calculation capacity as a function of the quantifiable quantity representative of the calculation capacity of each calculation card 32 and the amount of RAM available for each calculation card.
- the establishment unit 125 is configured to establish the first table from the computational need of each target function and the computational capacity of each target card.
- the establishment unit 125 is configured to associate with each target function a target card able to execute said function.
- the establishment unit 125 is configured to associate with each target function a target map whose computational capacity is greater than the computational need of said target function.
- the establishment unit 125 is configured to associate each target function with a respective target map so that a computational load is distributed as evenly as possible between all the target maps.
- the calculation load is understood here in the sense of the rate of use of processor(s) and the amount of RAM used, of a respective calculation card 32.
- the establishment unit 125 is configured to establish the second table from the computational need of each software function 60 and the computational capacity of each computation card 32.
- the establishment unit 125 is configured to choose, among the set of software functions 60 awaiting execution on the multimedia server 15, the one or those which are intended to be reassigned to the selected card, i.e. the source function(s).
- the establishment unit 125 is configured to choose the source functions so that the computing load is distributed as evenly as possible between all the computing cards 32.
- the establishment unit 125 is then configured to establish the second table by associating with each source function, the source card on which the source function is awaiting execution.
- the detection module 90 is configured to detect a re-energization of the selected card to the backplane card 28, following the restart of the selected card.
- the second control module 95 is configured to, following detection of the card selected by the detection module 90, reassign one or more software functions 60 respective to the selected card. To this end, the second control module 95 comprises a first transmission unit 130 and a second transmission unit 140.
- the first transmission unit 130 is configured to send, to the selected card, an authorization instruction for an assignment of new software function(s) 60 respectively.
- Each calculation card 32 then implements an authorization functionality, stored in the ROM 55, configured to, following receipt of the authorization instruction, authorize any new assignment(s) to the calculation card 32 of software function(s) 60 respectively.
- an authorization functionality stored in the ROM 55, configured to, following receipt of the authorization instruction, authorize any new assignment(s) to the calculation card 32 of software function(s) 60 respectively.
- any new assignment to the selected card of a respective software function 60 is authorized, then canceling the effect of the inhibition functionality.
- the first transmission unit 130 is configured to transmit, in the direction of at least one calculation card 32 other than the selected card, a second copy instruction to the selected card of at least one software function 60 awaiting execution by said calculation card(s) 32.
- the copy functionality of each calculation card 32 is also configured to, following receipt of the second copy instruction, copy at least one software function 60 awaiting execution on the selected card.
- the first transmission unit 130 is configured to transmit in the direction of each calculation card 32 forming a respective source card, the second copy instruction comprising the second table.
- Each source card is configured to, following receipt of the second table, via the second copy instruction, execute its autonomous copy functionality of the or each respective source function to the selected card.
- the first transmission unit 130 is configured to transmit, in the direction of each source card, a second respective copy instruction comprising an identifier of the source function and an identifier of the selected card.
- Each source card is then configured to, following receipt of each pair of identifier of a respective source function and identifier of the selected card, via the second copy instruction, execute the unit copy functionality of the source function identified, to the selected card.
- the second transmission unit 140 is configured to, following the transmission of the or each second copy instruction, transmit, in the direction of each source card, a second deletion instruction.
- Each calculation card 32 implements a unit deletion functionality configured for, following reception of the second deletion instruction, delete, from its ROM 55, the or each software function 60 having been copied onto another calculation card 32, this deletion being carried out according to the second table.
- the second transmission unit 140 is configured to transmit, for each source card, the second deletion instruction after the copying of each source function. Following receipt of the second deletion instruction, the unit deletion functionality of each source card is then configured to delete each source function of the associated source card.
- the second sending unit 140 is configured to send, for each source card, the second deletion instruction after the sending of the or each second copy instruction.
- the unit deletion functionality, associated with each source card is then configured to delete each source function from each source card.
- any instruction sent or transmitted from the control device 65 transits via the backplane board 28.
- At least two of the first sending unit 100, second sending unit 110, first sending unit 130, second sending unit 140 are common.
- the selection module 70 is configured to select a new calculation card 32, called the newly selected card, from among the set of calculation cards 32, following the detection by the module of detection 90 of the re-energization of the previously selected card, called previously selected.
- the previously selected and newly selected cards are then distinct.
- the generation module 85 is then configured to then simultaneously establish the second table associated with the previously selected card and the first table associated with the newly selected card.
- These first and second tables then include all the software functions awaiting execution by the newly selected card, which are each intended to be copied onto the previously selected card and already restarted. In other words, these tables are intended to copy all the functions awaiting execution by the newly selected card, on the initially selected card, which has just been restarted.
- the set of calculation cards 32 is configured to, if the selection module 70 selects the previously elected master card CM, elect a new master card from among the other calculation cards 32 with the exception of the selected card.
- the second sending unit 110 is configured to send the second deletion instruction following the detection, by the detection module 90, of a power-up of the selected card.
- the second control module 95 is configured to reassign respective software functions 60 to the selected card, following the sending, by the second sending unit 110, of the second deletion instruction.
- the first piloting module 70 and the second piloting module 95 form only one piloting module.
- the second control module 95 comprises an acquisition unit, not shown, configured to acquire, from each source card, a second completion signal when said source card has completed the execution of all running software functions.
- the second transmission unit 140 is configured to, following the acquisition of the second completion signal, transmit the or each second deletion instruction to each source card.
- Each source board is then configured to perform its unit deletion functionality from the second table or from the source function identifier received via the or each second deletion instruction.
- FIG. 3 representing a flowchart of a method of operation of this device 65, and with reference to FIG. effect of this process on a set of three calculation cards 32.
- each calculation card 32 executes respective software functions 60, and includes a certain number of software function(s) 60 awaiting execution.
- the multimedia server 15 comprises four calculation cards Ci, C2, C3, C4, the first three of which are shown.
- the first calculation card Ci comprises two software functions awaiting execution, each represented by a hatched hexagon.
- the second calculation card C2 and the third calculation card C3 each comprise a respective software function 60 awaiting execution, each marked by a white hexagon.
- the set of calculation cards 32 elects the master card CM.
- the master card C is the fourth card C4 which is not shown in figure 4.
- the selection module 70 included in the master card CM, selects a calculation card 32, from among the set of calculation cards 32.
- the card selected is the first calculation card Ci. It is identified by a star at the top left.
- the generation module 85 generates the first table.
- the generation step 210 includes for example an estimation sub-step 212, a determination sub-step 214 and an establishment sub-step 216.
- the estimation unit 115 estimates the computational need of each software function 60 awaiting execution by the selected card, also called the target function, as described previously.
- the determination unit 120 determines the computing capacity of each computing card 32 other than the selected card, also called the target card. In the example of FIG. 4, the determination unit 120 determines the computing capacity of the master card CM, of the second calculation card C2, and of the third calculation card C3.
- the establishment unit 125 establishes the first table from the computational need of each target function and the computational capacity of each target card, checking each time that the computational need is greater than or equal to the corresponding computing capacity.
- the piloting module 75 pilots a first reassignment, to one or more calculation cards 32 other than the selected card, of one or each target function.
- the first piloting step includes a sending sub-step 222, a receiving sub-step 224 and a sending sub-step 226.
- the first sending unit 100 sends, to the selected card, the first copy instruction comprising the first table. Then, the selected card executes its autonomous copy functionality in order to copy each of its software functions 60 awaiting execution, to the respective target card, defined according to the first table.
- a first target function is copied to the second calculation card C2 and a second target function is copied to the third calculation card C3 each time from the selected card Ci.
- the first target function and the second target function respectively copied onto the second calculation card C2 and the third calculation card C3 are represented by hatched hexagons.
- the first sending unit 100 also sends the instruction for inhibiting the assignment of a new software function 60 respectively to the selected card Ci.
- the selected card Ci executes the inhibition functionality, stored in the ROM 55, inhibiting any assignment, or allocation, of new software function(s) 60 respective to the selected card Ci.
- the reception unit 105 receives, from the selected card, the first completion signal.
- the second sending unit 110 sends, at the card selected, the first deletion instruction.
- each suppressed target function is represented by a hexagon whose contours are in dotted lines.
- the transmission module 80 transmits the restart instruction to the selected card.
- the selected card Ci executes its restart functionality. Following the execution of this functionality, the selected card Ci is powered off for about five seconds. In FIG. 4, this restart is represented by a flash.
- the detection module 90 detects the powering back on of the selected card Ci. Such detection means that the selected card is no longer powered off and that its restart is complete.
- the generation module 85 During a second generation step 250, the generation module 85 generates the second table, as described previously.
- the estimation unit 115 estimates the computational need of each software function 60.
- the determination unit 120 determines the computational capacity of each computation card 32.
- establishment unit 125 establishes the second table by choosing the or each source function so that the calculation load is evenly distributed over the set of calculation cards 32.
- the second piloting module 95 pilots the second reassignment, to the selected card, of at least one software function 60 waiting for execution by a calculation card other than the selected card which has just been restarted.
- the second piloting step 260 comprises for example a first transmission sub-step 262 and a second transmission sub-step 266.
- the first transmission unit 130 transmits, in the direction of the selected card, the assignment authorization instruction for new software function(s) respective(s).
- the selected card Ci executes the authorization functionality stored in its ROM 55, in order to authorize any assignment, or assignment, of new software function(s). (s) 60 respective to itself, thus nullifying the effect of the inhibit functionality.
- the first transmission unit 130 transmits the second copy instruction comprising the second table, in the direction of each calculation card 32 other than the selected card.
- each source card executes its autonomous copy functionality in order to copy the source function(s) identified in the second table, onto the selected card which has just been restarted.
- the second transmission unit 125 transmits, in the direction of the or each calculation card 32 from which at least a respective software function 60 has been copied, the second deletion instruction. Then, following receipt of the second deletion instruction, each respective calculation card 32 executes its deletion functionality, in order to delete, from its ROM 55, the software function(s) 60 having been copied onto the selected card.
- each calculation card 32 is restarted regularly, making it possible to eliminate the disturbances by an isolated particle.
- the second sending sub-step 226 is implemented following the detection step 240
- the control device 65 passes to the transmission step 222, represented by the arrow F3′, then to the detection step 240 and then to the second sub-step. send step 226 to delete the software functions of the selected card Ci following its restart, represented by the arrow F4'.
- the control device 65 passes to the second generation step 250, then to the second control step 260 represented by the arrow F 5 '.
- the copy of the target functions is managed by the control device 65, the selected card Ci executing each copy of target function to the target card progressively. extent of the first copy instructions received.
- the first sending unit 100 sends, to the selected card, for each target function of the first table, a respective first copy instruction comprising the identifier of said target function and the identifier of the associated target card in the first table.
- the unit copy functionality of the selected card is configured to be executed for each target function identifier received and for each target card identifier received, in the or one of the first copy instructions.
- the copy of the source functions is managed by the control device 65, each source card C2, C3 executing each copy of source function to the selected card C1 as the second copy instructions are received.
- the first transmission unit 115 transmits, for each source function of the second table, in the direction of the associated source card, a second respective copy instruction comprising the identifier of said source function and the identifier of the selected card.
- each source card is configured to be executed for each source function identifier received, in the or one of the copy instructions received.
- the method comprises, between the first transmission sub-step 262 and the second mission sub-step 266, a sub-step of acquisition, when from which the acquisition unit acquires, from the or each calculation card 32 from which a software function 60 has been copied, the second completion signal.
- control device 65 passes, for each source card, to the second transmission sub-step 266 during which each second deletion instruction is transmitted to a source card. respective, leading to the deletion of each source function from the ROM 55 of the respective source card.
- the selected card is thus restarted, after having copied each of its software functions 60 waiting for execution, on another calculation card 32, which makes it possible to eliminate the disturbances by an isolated particle, or SEU, without loss of said software function(s) 60, in order to provide uninterrupted entertainment for the user of the IFE system.
- the second control step 260 makes it possible to reassign to the selected card respective software functions 60 following its restart.
- the loss of computing power linked to the fact that all the software functions 60 are temporarily distributed over a smaller number of computing cards, is temporarily very limited. Indeed, the duration of such a situation is slightly longer than the time during which the selected card is powered off, i.e. approximately five seconds.
- the method according to the invention makes it possible to reduce the number of NFF errors by very greatly reducing the number of disturbances by an isolated particle by restarting the selected card, and preferably by regularly restarting each Compute cards 32.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Hardware Redundancy (AREA)
- Telephonic Communication Services (AREA)
Abstract
L'invention concerne un procédé de contrôle d'un ensemble de cartes de calcul d'un serveur multimédia destiné à être embarqué à bord d'un aéronef. Chaque carte de calcul est destinée à exécuter au moins une fonction logicielle. Le procédé est mis en œuvre par un dispositif électronique de contrôle et comprend une étape de sélection (200) d'une carte de calcul parmi l'ensemble des cartes de calcul, une première étape de pilotage (220) d'une réaffectation, à une ou plusieurs cartes de calcul autres que la carte sélectionnée, d'une ou de chaque fonction logicielle en attente d'exécution par la carte sélectionnée, et, suite à la première étape de pilotage (220), une étape de transmission (230) d'une instruction de redémarrage à la carte sélectionnée.
Description
TITRE : Procédé de contrôle d’un ensemble de cartes de calcul d’un serveur multimédia embarqué à bord d’un aéronef, programme d’ordinateur, dispositif électronique de contrôle, et serveur multimédia associés
La présente invention concerne un procédé de contrôle d’un ensemble de cartes de calcul d’un serveur multimédia destiné à être embarqué à bord d’un aéronef.
L’invention concerne également un programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un tel procédé de contrôle.
L’invention concerne également un serveur multimédia destiné à être embarqué à bord d’un aéronef, le serveur comprenant un ensemble de cartes de calcul dont au moins l’une est propre à exécuter un tel programme d’ordinateur.
L’invention concerne également un dispositif électronique de contrôle d’un ensemble de cartes de calcul d’un serveur multimédia destiné à être embarqué à bord d’un aéronef.
L’invention concerne alors le domaine des systèmes de divertissement pour aéronef, également appelé système de divertissement en vol IFE (de l’anglais In Flight Entertainment) que l’on trouve principalement à bord des avions long-courrier de l’aviation commerciale.
De manière connue en soi, un tel système IFE comprend une pluralité de terminaux de divertissement, également appelé terminaux utilisateurs, se présentant généralement sous la forme d’écrans individuels ou de tablettes. Chaque terminal de divertissement est intégré par exemple dans le siège du passager ou dans le siège devant celui-ci.
Ainsi disposés, ces terminaux permettent au passager de consulter des contenus multimédias lors du vol (par exemple des films, des émissions de TV, des jeux, ou de la musique) et d’être informé sur le déroulement du vol (altitude, vitesse, position courant, avancement, etc.).
Dans certains cas, ces terminaux permettent également de donner certaines informations pratiques concernant par exemple l’aéroport d’arrivée et de diffuser des annonces faites par l’équipage sous la forme sonore et/ou vidéo.
Les terminaux de divertissement sont généralement raccordés par un réseau filaire ou sans fil, un serveur multimédia embarqué faisant également partie du système IFE.
Ainsi, pour accéder au contenu informatique et mettre en œuvre ces fonctions, chaque terminal accède au serveur multimédia embarqué via le réseau.
Ainsi, une erreur intervenant sur le serveur multimédia est susceptible de causer une altération du contenu qui, dans certains cas, n’est alors plus diffusable via les terminaux.
Dans le serveur multimédia, il est connu que de telles erreurs interviennent fréquemment. Parmi elles, un type commun d’erreur, est qualifié de NFF (de l’anglais No Failure Found). Ces erreurs sont caractérisées par le fait qu’elles sont corrigibles par un redémarrage électrique du serveur multimédia.
Cependant, en cours d’utilisation, un redémarrage du serveur multimédia n’est pas envisageable puisque son fonctionnement serait alors arrêté pendant quelques temps conduisant, au mieux, à une interruption de diffusion de contenu(s) de divertissement aux passagers, et au pire ; à une inhibition d’une diffusion d’information(s) importante(s) aux passagers, par exemple relativement à la sécurité des passagers.
L’invention a donc pour but de proposer un procédé de contrôle d’un ensemble de cartes de calcul d’un serveur multimédia, un dispositif électronique de contrôle et un programme informatique associés, permettant de corriger des erreurs du type NFF de manière plus efficace.
A cet effet, l’invention a pour objet un procédé de contrôle d’un ensemble de cartes de calcul d’un serveur multimédia destiné à être embarqué à bord d’un aéronef, chaque carte de calcul étant destinée à exécuter au moins une fonction logicielle, le procédé étant mis en œuvre par un dispositif électronique de contrôle et comprenant :
- une étape de sélection d’une carte de calcul parmi l’ensemble des cartes de calcul,
- une première étape de pilotage d’une réaffectation, à une ou plusieurs cartes de calcul autres que la carte sélectionnée, d’une ou de chaque fonction logicielle en attente d’exécution par la carte sélectionnée, et
- suite à la première étape de pilotage, une étape de transmission d’une instruction de redémarrage à la carte sélectionnée.
Les erreurs NFF résultent souvent de dysfonctionnements apparaissant dans une mémoire volatile des cartes de calculs du serveur multimédia. Ces dysfonctionnements sont par exemple des perturbations par une particule isolées SEU (de l’anglais Single Event Upset). Un tel dysfonctionnement est susceptible de provoquer une corruption de données menant à des effets aléatoires, allant de la défaillance immédiate, à une propagation lente à travers le serveur multimédia.
Il est connu qu’un serveur multimédia en cours d’utilisation est susceptible de subir jusqu’à une perturbation par une particule isolée toutes les mille heures de vol. Ainsi, de tels dysfonctionnements interviennent plusieurs fois par an pour chaque aéronef.
Le procédé selon l’invention permet donc de limiter le nombre d’erreurs N FF en agissant sur les perturbations par une particule isolée affectant un serveur multimédia destiné à être embarqué à bord d’un aéronef.
On comprend alors que le procédé de contrôle permet un redémarrage des cartes de calcul, limitant alors l’apparition d’erreur(s) NFF et la propagation de perturbations par une particule isolée, tout en garantissant une continuité du traitement des fonctions logicielles.
Ainsi, lors de ce redémarrage, les perturbations par une particule isolée potentiellement présentes sur la carte sélectionnée sont supprimées lors du redémarrage de cette dernière.
De plus, le procédé de contrôle ne perturbe pas la transmission de contenu(s) entre le serveur multimédia et les terminaux de divertissement car les fonctions logicielles en attente d’exécution sur la carte sélectionnée sont copiées sur les autres cartes de calcul, qui sont aptes à les exécuter pendant le redémarrage de la carte sélectionnée.
Suivant d’autres aspects avantageux de l’invention, le procédé de contrôle comprend une ou plusieurs des caractéristiques suivantes, prises isolément ou suivant toutes les combinaisons techniquement possibles :
- l’étape de pilotage comprend les sous-étapes suivantes :
- envoi, à la carte sélectionnée, d’une première instruction de copie, sur au moins une autre carte de calcul, de la ou chaque fonction logicielle en attente d’exécution,
- envoi, à la carte sélectionnée, d’une première instruction de suppression de la ou chaque fonction logicielle préalablement copiée sur l’au moins une autre carte de calcul.
- l’étape de pilotage comprend en outre, entre la sous-étape d’envoi de la première instruction de copie et la sous-étape d’envoi de la première instruction de suppression, une sous-étape de réception, depuis la carte sélectionnée, d’un signal de complétion de l’exécution de chacune des fonctions logicielles en cours d’exécution sur ladite carte sélectionnée, la sous-étape d’envoi de la première instruction de suppression étant effectuée suite à la réception du signal de complétion ou suite à l’expiration d’une première temporisation prédéfinie, et la première instruction de suppression est alors une instruction de suppression de toutes les fonctions logicielles de la carte sélectionnée,
- après l’étape de transmission d’une instruction de redémarrage, une deuxième étape de pilotage d’une réaffectation, à la carte sélectionnée, d’au moins une fonction logicielle en attente d’exécution par une carte de calcul autre que la carte sélectionnée,
- la deuxième étape de pilotage comprend les sous-étapes suivantes :
- émission, en direction d’au moins une carte de calcul autre que la carte sélectionnée, d’une deuxième instruction de copie vers la carte sélectionnée d’au moins une fonction logicielle en attente d’exécution par ladite ou lesdites autres carte de calcul, et
- émission, en direction de la ou chaque carte de calcul autre que la carte sélectionnée depuis laquelle une fonction logicielle a été préalablement copiée, d’une deuxième instruction de suppression de ladite fonction logicielle.
- entre l’étape de sélection et la première étape de pilotage, une étape de génération d’une première table à partir d’un besoin calculatoire de chaque fonction logicielle en attente d’exécution par la carte sélectionnée et d’une capacité calculatoire de chaque carte de calcul autre que la carte sélectionnée ; la première table associant, à chaque fonction logicielle en attente d’exécution par la carte sélectionnée, une carte de calcul à laquelle ladite fonction logicielle est destinée à être réaffectée, et lors de la première étape de pilotage, chaque fonction logicielle en attente d’exécution est réaffectée selon la première table.
- chaque carte de calcul comprend au moins un processeur et une mémoire vive, et lors de l’étape de génération, la capacité calculatoire est déterminée à partir d’une grandeur représentative de la disponibilité de l’au moins un processeur et d’une quantité de mémoire disponible de la mémoire vive, et le besoin calculatoire de chaque fonction logicielle étant exprimé en fonction de ladite grandeur et de ladite quantité de mémoire disponible.
L’invention a également pour objet un produit programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un procédé de contrôle, tel que défini ci-dessus.
L’invention a également pour objet un serveur multimédia destiné à être embarqué à bord d’un aéronef, le serveur multimédia comprenant un ensemble de cartes de calcul, au moins l’une des cartes de calcul étant propre à exécuter un tel programme d’ordinateur.
Suivant un aspect avantageux de l’invention, le serveur multimédia comprend la caractéristique selon laquelle au moins deux des cartes de calcul comportent le programme d’ordinateur, l’ensemble de cartes de calcul étant configuré pour élire l’une des cartes de
calcul, dite carte maître, parmi celles comportant le programme d’ordinateur, la carte maître étant alors propre à exécuter ledit programme d’ordinateur.
L’invention a également pour objet un dispositif électronique de contrôle d’un ensemble de cartes de calcul d’un serveur multimédia destiné à être embarqué à bord d’un aéronef, chaque carte de calcul étant destinée à exécuter au moins une fonction logicielle, le dispositif électronique de contrôle comportant :
- un module de sélection configuré pour sélectionner une carte de calcul parmi l’ensemble de cartes de calcul,
- un module de pilotage configuré pour piloter une réaffectation, à une ou plusieurs cartes de calcul autres que la carte sélectionnée, d’une ou de chaque fonction logicielle en attente d’exécution par la carte sélectionnée, et
- un module de transmission configuré pour, suite à la réaffectation, envoyer une instruction de redémarrage à la carte sélectionnée.
Ces caractéristiques et avantages de l’invention apparaîtront plus clairement à la lecture de la description qui va suivre, donnée uniquement à titre d’exemple non limitatif et faite en référence aux dessins annexés, sur lesquels :
[Fig. 1] la figure 1 est une vue schématique d’un coffret électronique formant un serveur multimédia, le coffret comportant une carte de fond de panier et une pluralité de cartes électroniques connectées à la carte de fond de panier, le coffret étant embarqué dans un aéronef ;
[Fig. 2] la figure 2 est une vue schématique de trois cartes de calcul comprises dans le coffret électronique de la figure 1 ;
[Fig. 3] la figure 3 est un organigramme d’un procédé de contrôle selon l’invention, le procédé étant mis en œuvre par un dispositif électronique de contrôle inclus dans au moins une carte de calcul de la figure 2 ; et
[Fig. 4] la figure 4 illustre les étapes successives du procédé de contrôle selon l’invention.
La figure 1 représente partiellement un aéronef 10 comprenant un serveur multimédia 15.
L’aéronef 10 est de préférence un avion, en particulier un avion de l’aviation commerciale, tel qu’un avion long-courrier. L’aéronef 10 est apte à transporter des passagers, notamment quelques dizaines de passagers, voire quelques centaines de passagers.
Chaque système de divertissement embarqué à bord de l’aéronef 10 est configuré pour diffuser des contenus multimédias aux passagers de l’aéronef 10, en particulier lors
du vol (par exemple des films, des émissions de TV, des jeux ou de la musique), et/ou des informations sur le déroulement du vol (altitude, vitesse, position courante, avancement, etc.) par exemple via un ou plusieurs terminaux de divertissement non-représentés.
En complément facultatif, le système de divertissement est configuré pour diffuser des informations pratiques concernant par exemple l’aéroport d’arrivée, par exemple via des annonces sous forme sonore et/ou vidéo.
Chaque terminal de divertissement est connu en soi, et est relié au serveur multimédia 15 via un réseau local, non représenté, embarqué à bord de l’aéronef 10.
Chaque terminal de divertissement est par exemple fixé ou intégré dans le siège même du passager, ou bien est fixé ou intégré dans le dossier du siège se trouvant devant le siège du passager. Les sièges sont typiquement agencés en rangées au sein de l’aéronef 10.
Chaque terminal de divertissement, également appelé terminal utilisateur, comporte une interface homme/machine IHM, un module de traitement, un module applicatif et un module de télécommunication. L’interface homme/machine IHM comporte par exemple un écran tactile, ou un écran et un clavier. Le module applicatif comprend un ou plusieurs blocs applicatifs. Le module de télécommunication comporte un bloc de contrôle et une ou plusieurs interfaces de télécommunication adaptées pour émettre et recevoir des données. Le module de traitement est adapté pour piloter et coordonner le fonctionnement du module applicatif, de l’interface homme/machine IHM et du module de télécommunication.
Dans un mode de réalisation, il comporte un processeur et une mémoire, par exemple un disque dur ou tout autre espace de stockage apte à stocker un contenu informatique reçu notamment via le module de télécommunication.
Chaque terminal de divertissement est adapté pour délivrer aux passagers le contenu offert par le système de divertissement en vol. Par exemple, suite à une sélection par un passager d’un champ affiché sur l’écran IHM de son terminal de divertissement, le module de traitement est adapté pour identifier qu’il doit être affiché un menu de sélection d’un des applicatifs, par exemple une liste de films. Puis, sur détection de la sélection d’un film par le passager, le module de traitement est adapté pour déclencher l’affichage du film sur l’écran. Outre des films, les contenus délivrés par des applicatifs peuvent être divers : des contenus multimédias, par exemple des films, des émissions de TV, des jeux ou de la musique, des paramètres du vol (altitude, vitesse, etc.) et de son avancement (par exemple à l’aide d’une « movie map »), des annonces (audio et/ou vidéo) de l’équipage.
L’écran est apte à afficher des images correspondant à un contenu informatique distribué depuis le serveur multimédia 15. Plus précisément, le contenu informatique est reçu via le module de télécommunication depuis le serveur multimédia 15 sous forme d’un
flux diffusé (de l’anglais streaming) ou bien stocké dans la mémoire du terminal, après avoir été préalablement téléchargé depuis le serveur multimédia 15, via ledit module de télécommunication.
Le serveur multimédia 15 est par exemple réalisé sous la forme d’un coffret électronique 26 comportant une carte de fond de panier 28, plusieurs cartes électroniques 30, 31 , 32, parmi lesquelles au moins une carte commutateur réseau 30, optionnellement une ou plusieurs cartes de stockage de données 31 et plusieurs cartes de calcul 32. Le serveur 15 comprend en outre, une ou plusieurs cartes d’alimentation électrique 34.
Chaque carte électronique 30, 31 , 32, et chaque carte d’alimentation électrique 34 sont chacune respectivement connectées à la carte de fond de panier 28 via un connecteur fond de panier 36 respectif, comme représenté sur la figure 1. Le coffret électronique 26 comporte en outre un boitier de protection 38 à l’intérieur duquel sont logés la carte fond de panier 28 et la pluralité de carte(s) commutateur réseau 30, de cartes de stockage 31 , de cartes de calcul 32 et de carte(s) d’alimentation électrique 34, et des connecteurs externes 40 agencés en périphérie du boitier 38. Les connecteurs externes 40 sont notamment destinés à la connexion du serveur multimédia 15 au réseau local embarqué, ainsi qu’à un réseau d’alimentation électrique embarqué à bord de l’aéronef 10.
Le serveur multimédia 15 comprend de préférence plusieurs cartes 30, 31 , 32, 34 d’un même type fonctionnel choisi parmi le groupe consistant en : une carte commutateur réseau 30, également notée SW, une carte de stockage de données 31 , également notée S, une carte de calcul 32, également notée C, et une carte d’alimentation électrique 34, également notée P, visibles sur la figure 1. Dans l’exemple de la figure 1 , le serveur multimédia 15 comprend deux cartes commutateur réseau 30, une carte de stockage de données 31 , quatre cartes de calcul 32 et deux cartes d’alimentation électrique 34. Dans l’exemple de la figure 1 , les cartes de calcul 32 sont arbitrairement respectivement nommée, première carte de calcul Ci , deuxième carte de calcul C2, troisième carte de calcul C3, et quatrième carte de calcul C4.
Avantageusement, le serveur multimédia 15 comprend six cartes de calcul 32.
Le réseau local embarqué à bord de l’aéronef 10 est un réseau uniquement filaire, ou un réseau partiellement filaire et partiellement sans fil (de l’anglais wireless), ou encore un réseau uniquement sans fil.
Lorsque le réseau embarqué est partiellement sans fil, le serveur multimédia 15 est par exemple relié de manière filaire à un terminal de divertissement de chaque rangée de sièges, ledit terminal relié de manière filaire au serveur multimédia 15 est ensuite connecté via des liaisons sans fil aux autres terminaux de la rangée de sièges.
Chaque liaison sans fil est par exemple une liaison radioélectrique, telle qu’une liaison conforme à au moins l’une des versions de la norme IEEE 802.11 , également appelée norme Wi-Fi™, ou encore une liaison conforme à la norme Li-Fi™, par exemple à la norme IEEE 802.15.7.
Chaque carte électronique 30, 31 , 32 est, par exemple, du type fonctionnel carte commutateur réseau SW, ou carte de stockage de données S, ou encore carte de calcul C. Autrement dit, selon cet exemple, chaque carte électronique 30, 31 , 32, est d’un unique type fonctionnel parmi le groupe consistant en : carte commutateur réseau SW, carte de stockage de données S, carte de calcul C.
Chaque carte commutateur réseau 30 est configurée pour gérer les communications avec le réseau local, d’une manière connue en soi. Chaque carte commutateur réseau 30 est apte à effectuer un aiguillage des données entre le réseau local, d’une part, et les autres cartes électroniques 31 , 32 d’autre part, c’est-à-dire à mettre en œuvre une fonctionnalité de commutation réseau (de l’anglais switch) telle qu’une commutation Ethernet, selon une technique connue en soi et par exemple décrite dans la demande FR 19 12615 déposée le 12 novembre 2019.
Parmi les autres cartes électroniques 31 , 32, chaque carte de stockage de données 31 est une carte dédiée au stockage des données, notamment du contenu informatique destiné à être distribué aux terminaux de divertissement. La carte de stockage de données 31 comporte typiquement une ou plusieurs mémoires de stockage de masse.
L’ensemble de cartes de calcul 32 est configuré pour élire, par exemple de manière aléatoire, une carte maître, notée ci-après CM, parmi l’ensemble des cartes de calcul 32. Ainsi, l’ensemble de cartes de calcul 32 comprend une carte maître C et trois autres cartes de calcul 32. Sans perte de généralité et à titre d’exemple, il sera considéré dans la suite de la description que la carte élue maître CM est la quatrième carte de calcul C4.
En référence à la figure 2, chaque carte de calcul 32 comprend une unité centrale de traitement 45 ou CPU (de l’anglais Central Processing Unit), une mémoire vive 50 ou RAM (de l’anglais Random Access Memory) et une unité de stockage de données 55, telle qu’une mémoire morte ou ROM.
L’unité centrale de traitement 45 comprend par exemple un ou plusieurs processeurs propres à exécuter des tâches, aussi appelées fonctions ou fonctionnalités.
Ainsi, chaque carte de calcul 32 définit une mémoire volatile, comprise partiellement dans l’unité centrale de traitement 45 et dans la mémoire vive 50. La mémoire volatile stocke des données propres à être effacées lors d’un redémarrage de la carte 32.
Chaque mémoire morte 55 est apte à stocker une pluralité de fonctions logicielles 60 propres à être exécutées par l’unité centrale de traitement 45.
Dans l’exemple de la figure 2, chaque fonction logicielle 60 est soit en cours d’exécution par la carte de calcul 32 respective, i.e. par l’unité centrale de traitement 45 respective de la carte 32, comme représenté avec un remplissage noir, soit en attente d’exécution par la carte de calcul 32 respective, comme représenté avec un remplissage en blanc.
Chaque fonction logicielle 60 est par exemple un micro-service orchestré selon un système Kubernetes de l’entreprise Google, Docker Swarm de l’entreprise Docker, Inc, ou Nomad de l’entreprise HashiCorp.
On entend par micro-service, ou service unitaire, une fonction logicielle 60 apte à être exécutée indépendamment des autres. Ainsi, un tel service unitaire est par exemple déplaçable d’une carte de calcul 32 à une autre.
En outre, la mémoire morte 55 comprend un dispositif électronique de contrôle 65.
Le dispositif électronique de contrôle 65 comprend un module de sélection 70, un premier module de pilotage 75 et un module de transmission 80.
De manière optionnelle, le dispositif de contrôle 65 comprend également un module de génération 85, un module de détection 90 et un deuxième module de pilotage 95.
Comment indiqué précédemment, dans l’exemple de la figure 1 , le dispositif de contrôle 65 est inclus dans la mémoire morte 55 de chaque carte de calcul 32. Ainsi, selon cet exemple, le module de sélection 70, le premier module de pilotage 75 et le module de transmission 80, et optionnellement le module de génération 85, le module de détection 90, et le deuxième module de pilotage 90 sont réalisés chacun sous forme d’un logiciel, ou d’une brique logicielle, exécutables par l’unité centrale de traitement 45. Ces modules 70, 75, 80, 85, 90 sont alors stockés dans la mémoire morte 65 sous forme d’un logiciel de sélection, d’un premier logiciel de pilotage, d’un logiciel de transmission, et optionnellement d’un logiciel de génération, d’un logiciel de détection, et d’un deuxième logiciel de pilotage.
En variante non représentée, le dispositif de contrôle 65 est un dispositif électronique distinct connecté à chaque carte de calcul 32. Dans cette variante, le module de sélection 70, le premier module de pilotage 75 et le module de transmission 80, et optionnellement le module de génération 85, le module de détection 90 et le deuxième module de pilotage 90 sont réalisés chacun sous forme d’un composant logique programmable, tel qu’un FPGA (de l’anglais Field Programmable Gate Array), ou encore sous forme d’un circuit intégré dédié, tel qu’un ASIC (de l’anglais Application Specific Integrated Circuit).
Lorsque le dispositif électronique de contrôle 65 est réalisé sous forme d’un ou plusieurs logiciels, c’est-à-dire sous forme d’un programme d’ordinateur, il est en outre apte à être enregistré sur un support, non représenté, lisible par ordinateur. Le support lisible
par ordinateur est par exemple, un médium apte à mémoriser des instructions électroniques et à être couplé à un bus d’un système informatique. A titre d’exemple, le support lisible est un disque optique, un disque magnéto-optique, une mémoire ROM, une mémoire RAM, tout type de mémoire non volatile (par exemple EPROM, EEPROM, FLASH, NVRAM), une carte magnétique ou une carte optique. Sur le support lisible est alors mémorisé un programme d’ordinateur comprenant des instructions logicielles.
Le module de sélection 70 est configuré pour sélectionner une carte de calcul Ci, C2, C3, ou C4, parmi l’ensemble de cartes de calcul 32. La carte de calcul 32 sélectionnée par le module de sélection 70 est nommée carte sélectionnée dans la suite de la description. A cet effet, le module de sélection 70 est configuré pour sélectionner chacune des cartes de calcul 32 tour à tour selon une séquence prédéfinie se répétant cycliquement. Cette séquence prédéfinie est par exemple la séquence suivante : première carte de calcul Ci, puis deuxième carte de calcul C2, puis troisième carte de calcul C3, puis quatrième carte de calcul C4. Une autre séquence prédéfinie serait : deuxième carte de calcul C2, puis troisième carte de calcul C3, puis première carte calcul Ci, puis deuxième carte de calcul C2, et enfin quatrième carte de calcul C4. L’homme du métier reconnaîtra qu’il n’est pas nécessaire que chaque carte de calcul 32 soit sélectionnée en moyenne un même nombre de fois. Cependant, le procédé sera d’autant plus efficace si chaque carte de calcul 32 est sélectionnée au moins une fois.
En variante, le module de sélection 70 est configuré pour sélectionner de manière aléatoire l’une des cartes de calcul 32 de manière aléatoire, parmi l’ensemble de cartes de calcul 32.
Sans perte de généralité, à titre d’exemple et en référence à la figure 2, il est considéré ici que la carte sélectionnée est la première carte de calcul Ci.
L’homme du métier remarquera que la carte maître CM est sélectionnable par le module de sélection 70 et alors apte à former la carte sélectionnée. Un tel cas où une même carte de calcul 32 forme à la fois la carte maître C et la carte sélectionnée sera décrit ci- après sous la forme d’une variante.
Le premier module de pilotage 75 est configuré pour piloter une réaffectation, à une ou plusieurs cartes de calcul 32 autre que la carte sélectionnée, d’une ou de chaque fonction logicielle 60 en attente d’exécution par la carte sélectionnée.
Le premier module de pilotage 75 comprend une première unité d’envoi 100, une unité de réception 105, et une deuxième unité d’envoi 110.
La première unité d’envoi 100 est configurée pour envoyer, à la carte sélectionnée, une première instruction de copie, sur au moins une carte de calcul 32 autre que la carte sélectionnée, de la ou chaque fonction logicielle 60 en attente d’exécution par la carte
sélectionnée. A cet effet la première unité d’envoi 100 est configurée pour envoyer, à la carte sélectionnée, via la première instruction de copie, une première table générée par le module de génération 85.
La terminologie « instruction » est utilisée dans la suite de la description comme un synonyme de la terminologie « commande ».
La première table associe à chaque fonction logicielle 60 en attente d’exécution par la carte sélectionnée, dite fonction cible, une carte de calcul 32 autre que la carte sélectionnée, dite carte cible, sur laquelle copier la fonction cible.
Chaque carte de calcul 32 implémente une fonctionnalité de copie autonome, stockée dans la mémoire morte 55, configurée pour, suite à la réception, via la première instruction de copie, de la première table, copier, la ou chaque fonction cible, sur la carte cible associée dans la première table.
En variante, la première unité d’envoi 100 est configurée pour envoyer à la carte sélectionnée et pour chaque fonction cible de la première table, une première instruction de copie respective comprenant un identifiant de ladite fonction cible et un identifiant de la carte cible associée.
Selon cette variante, chaque carte de calcul 32 implémente alors une fonctionnalité de copie unitaire, stockée dans la mémoire morte 55, configurée pour, suite à la réception, via une première instruction de copie respective, d’un couple d’identifiants de fonction cible et de carte cible, copier la ou chaque fonction cible sur la carte cible associée.
La première unité d’envoi 100 est également configurée pour envoyer, à la carte sélectionnée, une instruction d’inhibition d’affectation, à la carte sélectionnée, de fonction(s) log icielle(s) 60 respective(s). Chaque carte de calcul 32 implémente alors une fonctionnalité d’inhibition, stockée dans la mémoire morte 55, configurée pour, suite à la réception de l’instruction d’inhibition, inhiber toute(s) nouvelle(s) affectation(s), à la carte de calcul 32, de fonction(s) logicielle(s) 60 respective(s). La dénomination « assignation » est entendue comme synonymes de la dénomination « affectation ». Autrement dit, suite à la réception, par la carte sélectionnée, de l’instruction d’inhibition, toute affectation à la carte sélectionnée d’une nouvelle fonction logicielle 60 respective est interdit.
L’unité de réception 105 est configurée pour recevoir, depuis la carte sélectionnée, un premier signal de complétion indiquant que l’exécution de chaque fonction logicielle en cours d’exécution a été achevée, i.e. terminée.
La deuxième unité d’envoi 110 est configurée pour envoyer, à la carte sélectionnée, une première instruction de suppression de la ou chaque fonction logicielle 60 préalablement copiée sur au moins une carte de calcul 32 autre que la carte sélectionnée.
Chaque carte de calcul 32 implémente une fonctionnalité de suppression autonome configurée pour, suite à une réception de la première instruction de suppression, supprimer, d’elle-même, la ou chaque fonction logicielle 60 ayant été copiée sur une autre carte de calcul 32, cette suppression étant effectuée selon la première table.
En complément facultatif, la deuxième unité d’envoi 110 est configurée pour envoyer la première instruction de suppression suite à la réception, par l’unité de réception 105, du premier signal de complétion, ou suite à l’expiration d’une temporisation prédéfinie.
Selon ce complément facultatif, la fonctionnalité autonome de suppression est configurée pour, suite à la réception de la première instruction de suppression, supprimer l’intégralité des fonctions logicielles 60 sur la carte sélectionnée.
En particulier, la deuxième unité d’envoi 110 est configurée pour envoyer la première instruction de suppression suite à la réception du signal de complétion ou à l’expiration de la temporisation prédéfinie et à la copie, par la fonctionnalité de copie autonome, de chaque fonction cible. Suite à la réception de la première instruction de suppression, la fonctionnalité de suppression autonome est alors configurée pour supprimer chaque fonction cible de la carte sélectionnée.
Alternativement, la deuxième unité d’envoi 110 est configurée pour envoyer la première instruction de suppression après seulement la réception du signal de complétion ou l’expiration de la temporisation prédéfinie. La fonctionnalité de suppression autonome est alors configurée pour supprimer chaque fonction cible après réception de la première instruction de suppression et copie de chaque fonction cible sur la carte cible respective.
L’homme du métier remarquera que la présence d’une temporisation prédéfinie vise à éviter que le dispositif de contrôle 65 soit bloqué par de l’exécution d’une fonction logicielle respective 60 qui n’aboutirait pas.
Le module de transmission 80 est configuré pour transmettre une instruction de redémarrage à la carte sélectionnée, notamment suite à l’envoi de la première instruction de suppression par la deuxième unité d’envoi 1 10.
Chaque carte de calcul 32 implémente une fonctionnalité de redémarrage configurée pour, suite à la réception de l’instruction de redémarrage commander un redémarrage de ladite carte de calcul 32.
La dénomination redémarrage est entendue ici au sens d’un redémarrage électrique, ou encore d’une réinitialisation matérielle de la carte de calcul 32 respective. Autrement dit, lors d’un tel redémarrage, la carte de calcul 32 est hors tension pendant une durée prédéfinie. La durée prédéfinie est par exemple égale à 5 secondes. Un tel redémarrage permet alors d’assurer un effacement de toutes données dans la mémoire volatile de la carte de calcul 32. Ceci est particulièrement avantageux, car les perturbations
par une particule isolée interviennent notamment au sein de la mémoire volatile de la carte 32.
Le module de génération 85 est configuré pour générer la première table, aussi appelée première table de réaffectation, associant à chaque fonction logicielle 60 destinée à être copiée, une carte de calcul 32 sur laquelle la fonction 60 est à copier. Autrement dit, le module de génération 85 est configuré pour générer la première table associant à chaque fonction cible, une carte cible respective. La carte cible est aussi appelée carte de destination.
En outre, le module de génération 85 est configuré pour générer une deuxième table associant, un ensemble de fonction(s) log icielle(s) destinée(s) à être copiée(s) sur la carte sélectionnée, à chaque carte de calcul 32 depuis laquelle la ou les fonctions sont destinées à être copiées. Chaque carte de calcul 32 présente dans la deuxième table est aussi appelée carte de départ ou carte source. Chaque fonction logicielle 60 présente dans la deuxième table est également appelée fonction source. Autrement dit, la deuxième table associe à chaque fonction source destinée à être copiée sur la carte sélectionnée après son redémarrage, une carte source respective depuis laquelle copier ladite fonction source.
A cet effet, le module de génération 85 comprend une unité d’estimation 115 d’un besoin calculatoire de chaque fonction logicielle 60 destinée à être copiée, une unité de détermination 120 d’une capacité calculatoire de chaque carte de calcul 32, et une unité d’établissement 125 configurée pour établir la première table.
L’unité d’estimation 115 est configurée pour estimer le besoin calculatoire de chaque fonction logicielle 60 destinée à être copiée, i.e. chaque fonction source et cible. A cet effet, l’unité d’estimation est configurée, pour chaque fonction logicielle 60 en attente d’exécution, pour estimer ledit besoin calculatoire sous forme d’une grandeur quantifiable représentative d’une capacité de calcul par une unité centrale de traitement 45 respective et d’une quantité de mémoire de la mémoire vive 55, requise pour l’exécution de ladite fonction. La grandeur quantifiable est par exemple exprimée en flops, préférentiellement en Mflops, Gflops ou Tflops. La grandeur quantifiable correspond typiquement à un taux d’utilisation de processeur, en particulier lorsque toutes les cartes de calcul 32 ont des capacités de calcul identiques. La quantité de mémoire de la mémoire vive 55 est aussi appelée quantité de mémoire vive.
Lorsque chaque carte de calcul 32 comprend une unité centrale de traitement 45 offrant les mêmes performances que celle d’une autre carte 32, le taux d’utilisation est exprimé sous forme de pourcentage de charge CPU maximale, aussi appelé fraction CPU, c’est-à-dire une fraction d’une capacité maximale de l’unité centrale de traitement 45.
La quantité de mémoire vive disponible est par exemple exprimée en Mbits ou en Gbits.
L’unité de détermination 120 est configurée pour déterminer la capacité calculatoire de chaque carte de calcul 32. A cet effet, l’unité de détermination 120 est configurée pour déterminer cette capacité calculatoire en fonction de la grandeur quantifiable représentative de la capacité de calcul de chaque carte de calcul 32 et de la quantité de mémoire vive disponible de chaque carte de calcul.
L’unité d’établissement 125 est configurée pour établir la première table à partir du besoin calculatoire de chaque fonction cible et de la capacité calculatoire de chaque carte cible.
A cet effet, l’unité d’établissement 125 est configurée pour associer à chaque fonction cible une carte cible apte à exécuter ladite fonction. Autrement dit, l’unité d’établissement 125 est configurée pour associer à chaque fonction cible une carte cible dont la capacité calculatoire est supérieure au besoin calculatoire de ladite fonction cible.
En complément facultatif, l’unité d’établissement 125 est configurée pour associer à chaque fonction cible, une carte cible respective de sorte à ce qu’une charge calculatoire soit répartie de manière la plus homogène possible entre toutes les cartes cibles. La charge calculatoire est entendue ici au sens du taux d’utilisation de processeur(s) et de la quantité de mémoire vive utilisée, d’une carte de calcul 32 respective.
En complément facultatif, l’unité d’établissement 125 est configurée pour établir la deuxième table à partir du besoin calculatoire de chaque fonction logicielle 60 et de la capacité calculatoire de chaque carte de calcul 32.
A cet effet, l’unité d’établissement 125 est configurée pour choisir, parmi l’ensemble de fonctions logicielles 60 en attente d’exécution sur le serveur multimédia 15, celle ou celles qui sont destinées à être réaffectées à la carte sélectionnée, i.e. la ou les fonctions sources. A cet effet, l’unité d’établissement 125 est configurée pour choisir les fonctions sources de sorte à ce que la charge calculatoire soit répartie de manière la plus homogène possible entre toutes les cartes de calcul 32.
L’unité d’établissement 125 est alors configurée pour établir la deuxième table en associant à chaque fonction source, la carte source sur laquelle la fonction source est en attente d’exécution.
Le module de détection 90 est configuré pour détecter une remise sous tension de la carte sélectionnée à la carte de fond de panier 28, suite au redémarrage de la carte sélectionnée.
Le deuxième module de pilotage 95 est configuré pour, suite à la détection de la carte sélectionnée par le module de détection 90, réaffecter une ou des fonctions logicielles
60 respectives à la carte sélectionnée. A cet effet, le deuxième module de pilotage 95 comprend une première unité d’émission 130 et une deuxième unité d’émission 140.
La première unité d’émission 130 est configurée pour envoyer, à la carte sélectionnée, une instruction d’autorisation d’une affectation de nouvelle(s) fonction(s) log icielle(s) 60 respective(s). Chaque carte de calcul 32 implémente alors une fonctionnalité d’autorisation, stockée dans la mémoire morte 55, configurée pour, suite à la réception de l’instruction d’autorisation, autoriser toute(s) nouvelle(s) affectation(s) à la carte de calcul 32 de fonction(s) logicielle(s) 60 respective(s). Autrement dit, suite à la réception de l’instruction d’autorisation, toute nouvelle affectation à la carte sélectionnée d’une fonction logicielle 60 respective est autorisée, annulant alors l’effet de la fonctionnalité d’inhibition.
La première unité d’émission 130 est configurée pour émettre, en direction d’au moins une carte de calcul 32 autre que la carte sélectionnée, une deuxième instruction de copie vers la carte sélectionnée d’au moins une fonction logicielle 60 en attente d’exécution par ladite ou lesdites cartes de calcul 32. La fonctionnalité de copie de chaque carte de calcul 32 est également configurée pour, suite à une réception de la deuxième instruction de copie, copier au moins une fonction logicielle 60 en attente d’exécution sur la carte sélectionnée.
En particulier, la première unité d’émission 130 est configurée pour émettre en direction de chaque carte de calcul 32 formant une carte source respective, la deuxième instruction de copie comprenant la deuxième table. Chaque carte source est configurée pour, suite à la réception de la deuxième table, via la deuxième instruction de copie, exécuter sa fonctionnalité de copie autonome de la ou chaque fonction source respective vers la carte sélectionnée.
En variante, la première unité d’émission 130 est configurée pour émettre en direction de chaque carte source, une deuxième instruction de copie respective comprenant un identifiant de la fonction source et un identifiant de la carte sélectionnée.
Chaque carte source est alors configurée pour, suite à la réception de chaque couple d’identifiant d’une fonction source respective et d’identifiant de la carte sélectionnée, via la deuxième instruction de copie, exécuter la fonctionnalité de copie unitaire de la fonction source identifiée, vers la carte sélectionnée.
La deuxième unité d’émission 140 est configuré pour, suite à l’émission de la ou chaque deuxième instruction de copie, émettre, en direction de chaque carte source, une deuxième instruction de suppression.
Chaque carte de calcul 32 implémente une fonctionnalité de suppression unitaire configurée pour, suite à une réception de la deuxième instruction de suppression,
supprimer, de sa mémoire morte 55, la ou chaque fonction logicielle 60 ayant été copiée sur une autre carte de calcul 32, cette suppression étant effectuée selon la deuxième table.
En particulier, la deuxième unité d’émission 140 est configurée pour émettre, pour chaque carte source, la deuxième instruction de suppression après la copie de chaque fonction source. Suite à la réception de la deuxième instruction de suppression, la fonctionnalité de suppression unitaire de chaque carte source est alors configurée pour supprimer chaque fonction source de la carte source associée.
Alternativement, la deuxième unité d’envoi 140 est configurée pour émettre, pour chaque carte source, la deuxième instruction de suppression après l’émission de la ou chaque deuxième instruction de copie. Après réception de la deuxième instruction de suppression et après copie de chaque fonction source sur la carte sélectionnée, la fonctionnalité de suppression unitaire, associée à chaque carte source, est alors configurée pour supprimer chaque fonction source de chaque carte source.
Il est à noter que toute instruction envoyée ou émise depuis le dispositif de contrôle 65 transite via la carte de fond de panier 28.
Selon une première variante, au moins deux des première unité d’envoi 100, deuxième unité d’envoi 110, première unité d’émission 130, deuxième unité d’émission 140 sont communes.
Selon une deuxième variante, compatible avec la première variante, le module de sélection 70 est configuré pour sélectionner une nouvelle carte de calcul 32, dite carte nouvellement sélectionnée, parmi l’ensemble de cartes de calcul 32, suite à la détection par le module de détection 90 de la remise sous tension de la carte sélectionnée préalablement, dite préalablement sélectionnée. Les cartes préalablement sélectionnée et nouvellement sélectionnée sont alors distinctes. Le module de génération 85 est alors configuré pour alors établir simultanément, la deuxième table associée à la carte préalablement sélectionnée et la première table associée à la carte nouvellement sélectionnée. Ces première et deuxième tables comprennent alors l’ensemble des fonctions logicielles en attente d’exécution par la carte nouvellement sélectionnée, qui sont chacune destinées à être copiées sur la carte préalablement sélectionnée et déjà redémarrer. Autrement dit, ces tables ont pour but de copier toutes les fonctions en attente d’exécution par la carte nouvellement sélectionnée, sur la carte initialement sélectionnée, qui vient d’être redémarrée.
Selon une troisième variante, compatible avec les première et deuxième variantes. L’ensemble de cartes de calcul 32 est configuré pour, si le module de sélection 70 sélectionne la carte maître CM précédemment élue, élire une nouvelle carte maître parmi les autres cartes de calcul 32 à l’exception de la carte sélectionnée.
Selon une quatrième variante, compatible avec chacune des précédentes variantes, la deuxième unité d’envoi 110 est configuré pour envoyer la deuxième instruction de suppression suite à la détection, par le module de détection 90, d’une remise sous tension de la carte sélectionnée. Dans cette quatrième variante, le deuxième module de pilotage 95 est configuré pour réaffecter des fonctions logicielles 60 respectives à la carte sélectionnée, suite à l’envoi, par la deuxième unité d’envoi 110, de la deuxième instruction de suppression.
Selon une sixième variante compatible avec chacune des variantes précédentes, le premier module de pilotage 70 et le deuxième module de pilotage 95 ne forment qu’un seul module de pilotage.
Selon une septième variante compatible avec chacune des variantes précédentes, le deuxième module de pilotage 95 comprend une unité d’acquisition non représentée, configurée pour acquérir, depuis chaque carte source, un deuxième signal de complétion lorsque ladite carte source a complétée l’exécution de l’ensemble des fonctions logicielles en cours d’exécution.
Selon cette septième variante, la deuxième unité d’émission 140 est configurée pour, suite à l’acquisition du deuxième signal de complétion, émettre la ou chaque deuxième instruction de suppression à chaque carte source. Chaque carte source est alors configurée pour exécuter sa fonctionnalité de suppression unitaire à partir de la deuxième table ou à partir de l’identifiant de la fonction source reçu via la ou chaque deuxième instruction de suppression.
Le fonctionnement du serveur multimédia 15 et plus particulièrement du dispositif électronique de contrôle 65, va maintenant être décrit en référence à la figure 3 représentant un organigramme d’un procédé de fonctionnement de ce dispositif 65, et en référence à la figure 4 illustrant l’effet de ce procédé sur un ensemble de trois cartes de calcul 32.
Initialement, le serveur multimédia est en fonctionnement, chaque carte de calcul 32 exécute des fonctions logicielles 60 respectives, et comprend un certain nombre de fonction(s) logicielle(s) 60 en attente d’exécution.
En référence à la figure 4, le serveur multimédia 15 comprend quatre cartes de calcul Ci, C2, C3, C4 dont les trois premières sont représentées. Ainsi, toujours en référence à la figure 4, la première carte de calcul Ci comprend deux fonctions logicielles en attente d’exécution, chacune représentée par un hexagone hachuré. La deuxième carte de calcul C2 et la troisième carte de calcul C3 comprennent chacune une fonction logicielle 60 respective en attente d’exécution, repérée chacune par un hexagone blanc.
Puis, l’ensemble de cartes de calcul 32 élit la carte maître CM. Dans l’exemple de la figure 4, et sans perte de généralité, la carte maître C est la quatrième carte C4 qui n’est pas représentée sur la figure 4.
Lors d’une étape de sélection 200, représentée sur la figure 4 par la flèche F1, le module de sélection 70, inclus dans la carte maître CM, sélectionne une carte de calcul 32, parmi l’ensemble de cartes de calcul 32. Sans perte de généralité, dans l’exemple de la figure 4, la carte sélectionnée est la première carte de calcul Ci. Elle est repérée par une étoile en haut à gauche.
Optionnellement, lors d’une première étape de génération 210, le module de génération 85 génère la première table. A cet effet, l’étape de génération 210 comprend par exemple une sous-étape d’estimation 212, une sous-étape de détermination 214 et une sous-étape d’établissement 216.
Lors de la sous-étape d’estimation 212, l’unité d’estimation 115 estime le besoin calculatoire de chaque fonction logicielle 60 en attente d’exécution par la carte sélectionnée, aussi appelée fonction cible, tel que décrit précédemment.
Lors de la sous-étape de détermination 214, l’unité de détermination 120 détermine la capacité calculatoire de chaque carte de calcul 32 autre que la carte sélectionnée, aussi appelée carte cible. Dans l’exemple de la figure 4, l’unité de détermination 120 détermine la capacité calculatoire de la carte maître CM, de la deuxième carte de calcul C2, et de la troisième carte de calcul C3.
Lors de la sous-étape d’établissement 216, l’unité d’établissement 125 établit la première table à partir du besoin calculatoire de chaque fonction cible et de la capacité calculatoire de chaque carte cible, en vérifiant à chaque fois que le besoin calculatoire est supérieur ou égal à la capacité calculatoire correspondante.
Lors d’une première étape de pilotage 220, le module de pilotage 75 pilote une première réaffectation, à une ou plusieurs cartes de calcul 32 autres que la carte sélectionnée, d’une ou de chaque fonction cible. A cet effet, la première étape de pilotage comprend une sous-étape d’envoi 222, une sous-étape de réception 224 et une sous-étape d’envoi 226.
Lors de la première sous-étape d’envoi 222, représentée sur la figure 4 par la flèche F2, la première unité d’envoi 100 envoie, à la carte sélectionnée, la première instruction de copie comprenant la première table. Puis, la carte sélectionnée exécute sa fonctionnalité autonome de copie afin de copier chacune de ses fonctions logicielles 60 en attente d’exécution, vers la carte cible respective, définie selon la première table. En référence à la figure 4, une première fonction cible est copiée sur la deuxième carte de calcul C2 et une deuxième fonction cible est copiée sur la troisième carte de calcul C3 chaque fois depuis la
carte sélectionnée Ci. Sur la figure 4, la première fonction cible et la deuxième fonction cible respectivement copiées sur la deuxième carte de calcul C2 et la troisième carte de calcul C3 sont représentées par des hexagones hachurés.
Lors de la première sous-étape d’envoi 222, la première unité d’envoi 100 envoie également l’instruction d’inhibition d’assignation d’une nouvelle fonction logicielle 60 respective à la carte sélectionnée Ci. Suite à la réception de l’instruction d’inhibition, la carte sélectionnée Ci exécute la fonctionnalité d’inhibition, stockée dans la mémoire morte 55, inhibant toute assignation, ou affectation, de nouvelle(s) fonction(s) logicielle(s) 60 respective(s) à la carte sélectionnée Ci.
Lors de la sous-étape de réception 224, l’unité de réception 105 reçoit, depuis la carte sélectionnée, le premier signal de complétion.
Lors de la deuxième sous-étape d’envoi 226, représentée sur la figure 4 par la flèche F3, suite à la réception du premier signal de complétion par l’unité de réception 105, la deuxième unité d’envoi 110 envoie, à la carte sélectionnée, la première instruction de suppression.
Suite à cet envoi, la carte sélectionnée Ci exécute sa fonctionnalité de suppression autonome, supprimant alors de sa mémoire morte 55 chaque fonction cible. Sur la figure 4, chaque fonction cible supprimée est représentée par un hexagone dont les contours sont en traits pointillés.
Ensuite, lors d’une étape de transmission 230, représentée par la flèche F4 sur la figure 4, le module de transmission 80 transmet l’instruction de redémarrage à la carte sélectionnée.
Suite à la réception de cette instruction de redémarrage, la carte sélectionnée Ci exécute sa fonctionnalité de redémarrage. Suite à l’exécution de cette fonctionnalité, la carte sélectionnée Ci est hors tension durant environ cinq secondes. Sur la figure 4, ce redémarrage est représenté par un éclair.
Suite au redémarrage de la carte sélectionnée Ci , lors d’une étape de détection 240, le module de détection 90 détecte la remise sous tension de la carte sélectionnée Ci. Une telle détection signifie que la carte sélectionnée n’est plus hors tension et que son redémarrage est terminé.
Lors d’une deuxième étape de génération 250, le module de génération 85 génère la deuxième table, tel que décrit précédemment.
A cet effet, lors de la deuxième étape de génération 250, l’unité d’estimation 1 15 estime le besoin calculatoire de chaque fonction logicielle 60. L’unité de détermination 120 détermine la capacité calculatoire de chaque carte de calcul 32. L’unité d’établissement 125
établit la deuxième table en choisissant la ou chaque fonction source de sorte à ce que la charge de calcul soit répartie de manière homogène sur l’ensemble de cartes de calcul 32.
Puis, lors d’une deuxième étape de pilotage 260, représentée sur la figure 4 par la flèche F5, le deuxième module de pilotage 95 pilote la deuxième réaffectation, à la carte sélectionnée, d’au moins une fonction logicielle 60 en attente d’exécution par une carte de calcul autre que la carte sélectionnée qui vient d’être redémarrée. La deuxième étape de pilotage 260 comprend par exemple une première sous-étape d’émission 262 et une deuxième sous-étape d’émission 266.
Lors de la première sous-étape d’émission 262, la première unité d’émission 130 émet, en direction de la carte sélectionnée, l’instruction d’autorisation d’affection de nouvelle(s) fonction(s) logicielle(s) respective(s). Suite à la réception de l’instruction d’autorisation, la carte sélectionnée Ci exécute la fonctionnalité d’autorisation stockée dans sa mémoire morte 55, afin d’autoriser toute affectation, ou assignation, de nouvelle(s) fonction(s) log icielle(s) 60 respective à elle-même, annulant ainsi l’effet de la fonctionnalité d’inhibition.
Lors de la première sous-étape d’émission 260, la première unité d’émission 130 émet la deuxième instruction de copie comprenant la deuxième table, en direction de chaque carte de calcul 32 autre que la carte sélectionnée. Suite à la réception de la deuxième instruction de copie, chaque carte source exécute sa fonctionnalité autonome de copie afin de copier la ou les fonctions source identifiées dans la deuxième table, sur la carte sélectionnée qui vient d’être redémarrée.
Puis, suite à l’émission 262 de chaque deuxième instruction de copie, lors de la deuxième sous-étape d’émission 266, la deuxième unité d’émission 125 émet, en direction de la ou chaque carte de calcul 32 depuis laquelle au moins une fonction logicielle 60 respective a été copiée, la deuxième instruction de suppression. Puis, suite à la réception de la deuxième instruction de suppression, chaque carte de calcul 32 respective exécute sa fonctionnalité de suppression, afin de supprimer, de sa mémoire morte 55, la ou les fonctions logicielles 60 ayant été copiées sur la carte sélectionnée.
Le procédé est ensuite optionnellement réitéré. Lors de cette réitération, lors de l’étape de sélection 200, une autre carte de calcul 32 est sélectionnée. Ainsi, par itérations successives de ce procédé, chaque carte de calcul 32 est redémarrée régulièrement, permettant de supprimer les perturbations par une particule isolée.
Ci-dessous sont décrites des variantes de fonctionnement du dispositif de contrôle 65 selon l’invention. Les éléments communs entre le fonctionnement des variantes et le fonctionnement décrit ci-dessus ne seront pas décrits de nouveau. Ainsi seules les différences sont précisées dans la description desdites variantes de fonctionnement.
Selon une première variante de fonctionnement, représentée sur la figure 4 par les flèches en trait pointillé F3 , F4’ et F5’, la deuxième sous-étape d’envoi 226 est mise en œuvre à la suite de l’étape de détection 240. Ainsi, suite à la réception 224 du premier signal de complétion, le dispositif de contrôle 65 passe à l’étape de transmission 222, représentée par la flèche F3’, puis à l’étape de détection 240 et ensuite à la deuxième sous- étape d’envoi 226 pour supprimer les fonctions logicielles de la carte sélectionnée Ci suite à son redémarrage, représentée par la flèche F4’. Suite à la deuxième sous-étape d’envoi 226, le dispositif de contrôle 65 passe à la deuxième étape de génération 250, puis à la deuxième étape de pilotage 260 représentée par la flèche F5’.
Selon une deuxième variante de fonctionnement non-représentée, compatible avec la première variante de fonctionnement, la copie des fonctions cibles est gérée par le dispositif de contrôle 65, la carte sélectionnée Ci exécutant chaque copie de fonction cible vers la carte cible au fur et à mesure des premières instructions de copie reçues.
Selon cette deuxième variante, lors de la première sous-étape d’envoi 222, la première unité d’envoi 100 envoie, à la carte sélectionnée, pour chaque fonction cible de la première table, une première instruction de copie respective comprenant l’identifiant de ladite fonction cible et l’identifiant de la carte cible associée dans la première table.
Selon cette deuxième variante, la fonctionnalité de copie unitaire de la carte sélectionnée est configurée pour être exécutée pour chaque identifiant de fonction cible reçu et pour chaque identifiant de carte cible reçu, dans la ou l’une des premières instructions de copie.
De manière analogue, selon une troisième variante de fonctionnement non- représentée, compatible avec les première et deuxième variantes de fonctionnement, la copie des fonctions sources est gérée par le dispositif de contrôle 65, chaque carte source C2, C3 exécutant chaque copie de fonction source vers la carte sélectionnée C1 au fur et à mesure des deuxièmes instructions de copie reçues.
Selon cette troisième variante, lors de la première sous-étape d’émission 262, la première unité d’émission 115 émet, pour chaque fonction source de la deuxième table, en direction de la carte source associée, une deuxième instruction de copie respective comprenant l’identifiant de ladite fonction source et l’identifiant de la carte sélectionnée.
Selon cette troisième variante, la fonctionnalité de copie unitaire de chaque carte source est configurée pour être exécutée pour chaque identifiant de fonction source reçu, dans la ou l’une des instructions de copie reçues.
Selon la variante non-représentée dans laquelle le deuxième module de pilotage 95 comprend une unité d’acquisition, le procédé comprend, entre la première sous-étape d’émission 262 et la deuxième sous-étape d’mission 266, une sous-étape d’acquisition, lors
de laquelle l’unité d’acquisition acquiert, depuis la ou chaque carte de calcul 32 depuis laquelle une fonction logicielle 60 a été copiée, le deuxième signal de complétion.
Selon cette dernière variante, suite à l’acquisition du deuxième signal de complétion le dispositif de contrôle 65 passe pour chaque carte source, à la deuxième sous-étape d’émission 266 lors de laquelle chaque deuxième instruction de suppression est émise vers une carte source respective, conduisant à la suppression de chaque fonction source de la mémoire morte 55 de la carte source respective.
Avec le procédé selon l’invention, la carte sélectionnée est ainsi redémarrée, après avoir copiée chacune de ses fonctions logicielles 60 en attente d’exécution, sur une autre carte de calcul 32, ce qui permet de supprimer les perturbations par une particule isolée, ou SEU, sans perte desdites fonction(s) logicielle(s) 60, ceci afin d’offrir un divertissement sans interruption pour l’utilisateur du système IFE.
En outre, la deuxième étape de pilotage 260 permet de réaffecter à la carte sélectionnée des fonctions logicielles 60 respectives suite à son redémarrage. Ainsi, la perte de puissance de calcul, liée au fait que l’ensemble des fonctions logicielles 60 soit momentanément réparti sur un plus faible nombre de cartes de calcul, est temporairement très limitée. En effet, la durée d’une telle situation est légèrement supérieure au temps pendant lequel la carte sélectionnée est hors tension, c’est-à-dire environ cinq secondes.
On comprend donc bien que le procédé selon l’invention permet de réduire le nombre d’erreurs NFF en réduisant très fortement le nombre de perturbations par une particule isolée de par le redémarrage de la carte sélectionnée, et préférentiellement de par le redémarrage régulier de chacun des cartes de calcul 32.
Claims
1. Procédé de contrôle d’un ensemble de cartes de calcul (32) d’un serveur multimédia (15) destiné à être embarqué à bord d’un aéronef (10), chaque carte de calcul (32) étant destinée à exécuter au moins une fonction logicielle (60), le procédé étant mis en œuvre par un dispositif électronique de contrôle (65) et comprenant:
- une étape de sélection (200) d’une carte de calcul (32) parmi l’ensemble des cartes de calcul (32),
- une première étape de pilotage (220) d’une réaffectation, à une ou plusieurs cartes de calcul (32) autres que la carte sélectionnée, d’une ou de chaque fonction logicielle (60) en attente d’exécution par la carte sélectionnée, et
- suite à la première étape de pilotage (220), une étape de transmission (230) d’une instruction de redémarrage à la carte sélectionnée.
2. Procédé selon la revendication 1 , dans lequel l’étape de pilotage (210) comprend les sous-étapes suivantes :
- envoi (222), à la carte sélectionnée, d’une première instruction de copie, sur au moins une autre carte de calcul (32), de la ou chaque fonction logicielle (60) en attente d’exécution,
- envoi (226), à la carte sélectionnée, d’une première instruction de suppression de la ou chaque fonction logicielle (60) préalablement copiée sur l’au moins une autre carte de calcul (32).
3. Procédé selon la revendication 2, dans lequel l’étape de pilotage (220) comprend en outre, entre la sous-étape d’envoi (222) de la première instruction de copie et la sous-étape d’envoi (226) de la première instruction de suppression, une sous-étape de réception (224), depuis la carte sélectionnée, d’un signal de complétion de l’exécution de chacune des fonctions logicielles (60) en cours d’exécution sur ladite carte sélectionnée, la sous-étape d’envoi (226) de la première instruction de suppression étant effectuée suite à la réception (224) du signal de complétion ou suite à l’expiration d’une première temporisation prédéfinie, et la première instruction de suppression est alors une instruction de suppression de toutes les fonctions logicielles (60) de la carte sélectionnée.
4. Procédé selon l’une quelconque des revendications précédentes, comprenant en outre, après l’étape de transmission (230) d’une instruction de redémarrage, une deuxième étape de pilotage (260) d’une réaffectation, à la carte sélectionnée, d’au moins une fonction logicielle (60) en attente d’exécution par une carte de calcul (32) autre que la carte sélectionnée.
5. Procédé selon la revendication 4, dans lequel la deuxième étape de pilotage (260) comprend les sous-étapes suivantes :
- émission (262), en direction d’au moins une carte de calcul (32) autre que la carte sélectionnée, d’une deuxième instruction de copie vers la carte sélectionnée d’au moins une fonction logicielle (60) en attente d’exécution par ladite ou lesdites autres carte de calcul (32), et
- émission (266), en direction de la ou chaque carte de calcul (32) autre que la carte sélectionnée depuis laquelle une fonction logicielle (60) a été préalablement copiée, d’une deuxième instruction de suppression de ladite fonction logicielle (60).
6. Procédé selon l’une quelconque des revendications précédentes, comprenant en outre, entre l’étape de sélection (200) et la première étape de pilotage (220), une étape de génération (210) d’une première table à partir d’un besoin calculatoire de chaque fonction logicielle (60) en attente d’exécution par la carte sélectionnée et d’une capacité calculatoire de chaque carte de calcul (32) autre que la carte sélectionnée ; la première table associant, à chaque fonction logicielle (60) en attente d’exécution par la carte sélectionnée, une carte de calcul (32) à laquelle ladite fonction logicielle (60) est destinée à être réaffectée, et lors de la première étape de pilotage (220), chaque fonction logicielle (60) en attente d’exécution est réaffectée selon la première table.
7. Procédé selon la revendication précédente, dans lequel chaque carte de calcul (32) comprend au moins un processeur (45) et une mémoire vive (50), et lors de l’étape de génération (210), la capacité calculatoire est déterminée à partir d’une grandeur représentative de la disponibilité de l’au moins un processeur (45) et d’une quantité de mémoire disponible de la mémoire vive (50), et le besoin calculatoire de chaque fonction logicielle étant exprimé en fonction de ladite grandeur et de ladite quantité de mémoire disponible.
8. Programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un procédé selon l’une quelconque des revendications précédentes.
9. Serveur multimédia (15) destiné à être embarqué à bord d’un aéronef (10), le serveur multimédia (15) comprenant un ensemble de cartes de calcul (32), au moins l’une des cartes de calcul (32) étant propre à exécuter le programme d’ordinateur selon la revendication précédente.
10. Serveur multimédia (15) selon la revendication précédente, dans lequel au moins deux des cartes de calcul (32) comportent le programme d’ordinateur selon la revendication 8, l’ensemble de cartes de calcul (32) étant configuré pour élire l’une des cartes de calcul (32), dite carte maître (CM), parmi celles comportant le programme d’ordinateur, la carte maître (C ) étant alors propre à exécuter ledit programme d’ordinateur.
11. Dispositif électronique de contrôle (65) d’un ensemble de cartes de calcul (32) d’un serveur multimédia (15) destiné à être embarqué à bord d’un aéronef (10), chaque carte de calcul (32) étant destinée à exécuter au moins une fonction logicielle (60), le dispositif électronique de contrôle (65) comportant :
- un module de sélection (70) configuré pour sélectionner une carte de calcul (32) parmi l’ensemble de cartes de calcul (32),
- un module de pilotage (80) configuré pour piloter une réaffectation, à une ou plusieurs cartes de calcul (32) autres que la carte sélectionnée, d’une ou de chaque fonction logicielle (60) en attente d’exécution par la carte sélectionnée, et
- un module de transmission (85) configuré pour, suite à la réaffectation, envoyer une instruction de redémarrage à la carte sélectionnée.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023540183A JP2024503334A (ja) | 2020-12-30 | 2021-12-28 | 航空機に搭載されたメディアサーバのコンピュータボードのセットを制御するための方法、関連するコンピュータプログラム、電子制御デバイス、及びメディアサーバ |
US18/259,981 US20240054010A1 (en) | 2020-12-30 | 2021-12-28 | Method for controlling a set of computer boards of a media server on-board an aircraft, associated computer program, electronic control device and media server |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FRFR2014278 | 2020-12-30 | ||
FR2014278A FR3118512B1 (fr) | 2020-12-30 | 2020-12-30 | Procédé de contrôle d’un ensemble de cartes de calcul d’un serveur multimédia embarqué à bord d’un aéronef, programme d’ordinateur, dispositif électronique de contrôle, et serveur multimédia associés |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022144368A1 true WO2022144368A1 (fr) | 2022-07-07 |
Family
ID=74669124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2021/087749 WO2022144368A1 (fr) | 2020-12-30 | 2021-12-28 | Procédé de contrôle d'un ensemble de cartes de calcul d'un serveur multimédia embarqué à bord d'un aéronef, programme d'ordinateur, dispositif électronique de contrôle, et serveur multimédia associés |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240054010A1 (fr) |
JP (1) | JP2024503334A (fr) |
FR (1) | FR3118512B1 (fr) |
WO (1) | WO2022144368A1 (fr) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090217087A1 (en) * | 2008-02-27 | 2009-08-27 | Eiji Nakajima | Computer device, continuing operation method for computer device, and program |
US20100318834A1 (en) * | 2009-06-16 | 2010-12-16 | Airbus Operations (S.A.S.) | Method and device for avionic reconfiguration |
US7904546B1 (en) * | 2004-09-27 | 2011-03-08 | Alcatel-Lucent Usa Inc. | Managing processes on a network device |
US20150058659A1 (en) * | 2013-08-21 | 2015-02-26 | Dell Inc | Automatic failover in modular chassis systems |
-
2020
- 2020-12-30 FR FR2014278A patent/FR3118512B1/fr active Active
-
2021
- 2021-12-28 US US18/259,981 patent/US20240054010A1/en active Pending
- 2021-12-28 JP JP2023540183A patent/JP2024503334A/ja active Pending
- 2021-12-28 WO PCT/EP2021/087749 patent/WO2022144368A1/fr active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7904546B1 (en) * | 2004-09-27 | 2011-03-08 | Alcatel-Lucent Usa Inc. | Managing processes on a network device |
US20090217087A1 (en) * | 2008-02-27 | 2009-08-27 | Eiji Nakajima | Computer device, continuing operation method for computer device, and program |
US20100318834A1 (en) * | 2009-06-16 | 2010-12-16 | Airbus Operations (S.A.S.) | Method and device for avionic reconfiguration |
US20150058659A1 (en) * | 2013-08-21 | 2015-02-26 | Dell Inc | Automatic failover in modular chassis systems |
Also Published As
Publication number | Publication date |
---|---|
US20240054010A1 (en) | 2024-02-15 |
JP2024503334A (ja) | 2024-01-25 |
FR3118512B1 (fr) | 2023-02-24 |
FR3118512A1 (fr) | 2022-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3238056B1 (fr) | Methode d'ordonnancement de taches au niveau des noeuds d'un cluster informatique, ordonnanceur de taches et cluster associes | |
EP3506096A1 (fr) | Calculateur électronique de mise en oeuvre d'au moins une fonction critique, dispositif électronique, procédé et programme d'ordinateur associés | |
EP2353256A1 (fr) | Determination et gestion de reseaux virtuels | |
FR2983600A1 (fr) | Procede et systeme de surveillance d'une interface graphique dans un cockpit d'aeronef | |
EP3470986B1 (fr) | Procédé et dispositif de surveillance d'une application logicielle avionique via sa durée d'exécution, programme d'ordinateur et système avionique associés | |
EP0611171B1 (fr) | Système de synchronisation de tâches redondantes | |
EP2209009B1 (fr) | Procédé de commande d'un aéronef mettant en oeuvre un système de vote | |
EP3555745B1 (fr) | Dispositif de chargement de données dans des unités informatiques de traitement depuis une source de données | |
EP0874310A1 (fr) | Procédé pour changer de version de logiciel dans un système informatique comportant plusieurs stations, et système informatique pour la mise en oeuvre de ce procédé | |
EP3599552B1 (fr) | Procédé et dispositif électronique d'installation d'applications logicielles avioniques sur une plateforme comprenant un processeur multicoeurs, programme d'ordinateur et système électronique associés | |
WO2022144368A1 (fr) | Procédé de contrôle d'un ensemble de cartes de calcul d'un serveur multimédia embarqué à bord d'un aéronef, programme d'ordinateur, dispositif électronique de contrôle, et serveur multimédia associés | |
EP2709008B1 (fr) | Procédé et dispositif de décompte du temps déporté pour unité de traitement dans un système de traitement de l'information | |
FR3101450A1 (fr) | Procédé de stockage de données dans un espace de stockage de données d'un serveur, dispositif de gestion de stockage associé et serveur comprenant un tel dispositif | |
EP3460664B1 (fr) | Procédé de gestion de modules logiciels embarqués pour un calculateur électronique d'un appareil électrique de coupure | |
EP3660677A1 (fr) | Procédé et dispositif de surveillance d'application(s) logicielle(s) avec période temporelle tampon précédant une section réservée pour un ensemble de ressource(s) partagée(s), programme d'ordinateur et système avionique associés | |
FR3103038A1 (fr) | Procede et dispositif electronique de surveillance d'une application logicielle avionique via des compteurs d'appel(s) systeme, programme d'ordinateur et systeme avionique associes | |
BE1029291B1 (fr) | Procédé et système d'affichage digital pour publicité extérieure | |
EP0784270B1 (fr) | Procédé pour ordonnancer une pluralité de messages provenant respectivement d'une pluralité de sources, et système pour la mise en oeuvre de ce procédé | |
EP3392768B1 (fr) | Procédé et dispositif électronique de vérification d'une configuration de partitionnement, programme d'ordinateur associé | |
WO2012038000A1 (fr) | Procede de gestion de taches dans un microprocesseur ou un ensemble de microprocesseurs | |
EP3051416A1 (fr) | Procédé de commande de déploiement d'un programme a exécuter dans un parc de machines | |
WO2021094180A1 (fr) | Serveur multimedia destine a etre embarque a bord d'un aeronef, systeme electronique de divertissement comprenant un tel serveur, procede de configuration logicielle d'un tel serveur et programme d'ordinateur associe | |
WO2020193573A1 (fr) | Serveur multimédia destiné à être embarqué à bord d'un aéronef, système électronique de divertissement comprenant un tel serveur, procédé de mise à jour d'un tel serveur et programme d'ordinateur associé | |
EP3131005A1 (fr) | Equipement électronique ferroviaire comprenant un programme de démarrage comportant une ou plusieurs partitions de démarrage, véhicule ferroviaire et système ferroviaire associés | |
WO2021058743A1 (fr) | Serveur multimédia pour un système de divertissement embarqué, système de divertissement embarqué comprenant un tel serveur, procédé de contrôle de stockage dans un tel serveur et programme d'ordinateur associé |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21847713 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18259981 Country of ref document: US Ref document number: 2023540183 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |