PC e Sistemi operativi su ISS

Non ho mai indagato bene su quali sistemi operativi ci siano installati sui laptop della ISS.

Per sentito dire so che c’è Windows XP.

Bene, oggi guardando questo video, ho visto (al minuto 00:53) che addirittura sembra che vadino con windows 2000 con in virtual machine XP. E’ una regola, oppure perche quello mostrato è un pc che va su internet ecc… e la virtual machine l’hanno usata per isolare i due ambienti??

http://www.nasa.gov/connect/foursquare.html

Mi hai preceduta, anch’io sono interessata all’argomento, si era iniziato a parlarne in questo topic, ma credo che aprirne uno a parte sia meglio.

PS: buon Linux Day a tutti per ieri

Per accedere a Internet usano un pc a terra in remote desktop.
http://techcrunch.com/2010/01/22/nasa-astronaut-tweets-from-space-for-real-this-time/

Sulla stazione ci sono molti tipi diversi di laptop, e hanno sistemi operativi diversi. Ad esempio, i laptop per leggere telemetria e mandare comandi girano su Linux. Quelli per leggere i daily summary, le procedure, etc. invece girano su Windows (direi XP ma non ne sono sicuro).

In ogni caso, entrambi i sistemi operativi hanno problemi, e ogni tanto si “piantano” a causa dei single event upset. In pratica le radiazioni che ogni tanto impattano il computer incasinano un po’ la RAM, e alla lunga il computer o qualche applicazione si blocca. Questo è un problema noto a bordo della ISS, e in questi casi l’equipaggio semplicemente esegue un reboot. In aggiunta, ci sono dei reboot pianificati. Nella sezione russa una delle task di ogni mattina è fare il reboot di tutti i laptop. In quella americana il reboot invece avviene una volta al mese.

Questa possibilità non l’avevo considerata… avevo pensato al virtual machine per separare i due ambienti, ma a quel punto meglio il desktop remoto… il pc sta a terra e la separazione c’è cmq…

Un’aggiunta: può anche darsi che usino windows XP con la visualizzazione classica. Lo dico perchè ad esempio sul mio portatile di Astrium c’è solo la visualizzazione classica, e idem era con il portatile di Alenia…

Sull’argomento anche qui:
http://www.forumastronautico.it/index.php?topic=4148
http://www.forumastronautico.it/index.php?topic=4939

Vi allego una immagine della control room dello SRAG (Space Radiation Analysis Group) al JSC.
Sono quelli che controllano il livello di radiazioni a livello operations (decidono se è da abortire un’EVA perchè sta arrivando un evento solare, per esempio).
Che sistema operativo usano? :grin:


SRAG.jpg

Windows è un sistema operativo, che si intenda 2k o seven non importa, che, nella versione standard (home enterprise o chi per essa) è general porpouse. Quindi va benissimo per collegarsi ad internet, per far girare applicativi tipo office, per gestire reti aziendali anche complesse, ovviamente nella versione server, per applicazioni multimediali e per giocarci con orbiter … etc etc etc.
Idem Linux qualsiasi distribuzione si consideri.( secondo me la confusione generata dalle miriadi di distribuzioni è una delle cause che ha ridotto la diffusione di Linux)
Per applicazioni anche in sala di controllo di missioni spaziali o per gestire esperimenti anche sulla ISS possono anche andar bene.
Interessante l’aspetto della scarsa affidabilità dell’hw nello spazio.
Diverso ovviamente il discorso quando il sistema operativo viene usato su un sistema di controllo dedicato come può essere in campo industriale e, ambiente industriale portato al limite, nel settore aerospaziale.
Qui il più delle volte girerà un solo programma, magari spezzato in più processi magari a loro volta spezzati in più thread.
Magari l’hw avrà a disposizione microprocessori multicore o più processori.
Ad ogni modo gli aspetti importanti sono l’affidabilità del sistema operativo, di cui si deve sapere a fondo cosa può fare, cosa non può fare e soprattutto che non faccia nulla quando gli gira come per esempio scansioni di memorie di massa o controlli sulla rete o altro.
In sostanza ogni attività del sistema operativo deve essere sotto il nostro controllo. Uno degli aspetti fondamentali di un sistema operativo industriale è la gestione del real time, ovvero la certezza di non perdere un evento esterno successivo ad uno che si è verificato all’istante X. In sostanza io devo sapere quanto è l’intervallo di tempo successivo alla acquisizione di un evento necessario per “rispondere” a quell’evento. In questo intervallo il sistema è cieco e non vede altri eventi esterni. In sostanza devo conoscere con esattezza la dinamica degli eventi che devo gestire e dimensionare il mio sistema in modo da non perdere nemmeno un evento.
Windows normale, ma anche Linux standard, non è adeguato per questi scopi proprio perchè non conosciamo con esattezza il comportamento del sistema operativo.
Linux, e intendo il suo kernel, ha il vantaggio di essere molto meglio conosciuto, dato che sono disponibili i sorgenti.
Ovviamente esistono le versioni embedded di windows e di linux ma anche queste possono essere soggette a problemi di affidabilità.

Ci sono leggi, vere in generale, che identificano in un certo numero di errori ogni numero di linee di programma. Ed i sistemi operativi non esulano da questo problema.
Sopra il kernel, solitamente c’è uno strato di software che implementa i driver per comunicare con dell’hw aggiuntivo e la scrittura di questi driver e la loro interazione con il sistema operativo sottostante è spesso causa di blocchi del sistema.
E’ per questo che una architettura affidabile prevede non un kernel monolitico, come è il caso di Linux ma detta a microkernel, come è il caso del tanto bistrattato (giustamente per altri aspetti) windows vista e, credo, seven.
Un sistema operativo basato su microkernel con in più la funzione suggestivamente definita “resurrection module” è minix, sistema operativo europeo sviluppato all’università di Amsterdam ( è studiando minix che Torvald ha deciso di sviluppare Linux) in cui se un modulo del kernel si blocca viene eliminato e fatto ripartire.
C’è il problema della “garbage collection”, cioè la raccolta dei rifiuti, cioè codice rimasto in giro e non più utilizzato da programmi mal scritti. Chi usa Android avrà visto che ogni tanto il telefono pare fermarsi per un attimo, in quell’attimo la macchina virtuale Java esegue questo compito, ovvio che questo implica la perdita del real time, dall’altra non avere una efficiente GC implica scrivere programmi perfetti.
Insomma, è difficile dire quale sistema operativo è buono e quale no.

ti quoto in pieno… e proprio su queste informazione che è inutile fare paragoni assurdi tra i sistemi (cosa che accade molto spesso su un sacco di forum o siti di notizie informatiche, infamando windows e magari lodandone un altro).

Il problema è che i sistemi operativi sono molto complessi, ed è impossibile farli senza problemi… (puoi ridurli al minimo, ma quando le linee di codice diventano troppe, puoi solo sperare di minimizzarli).

In più un sistema operativo ha il suo settore di applicazione… e quindi avrà i suo vantaggi per quello e si porterà dietro degli svantaggi, se portato fuori dal contesto per cui è stato progettato.

Su un sistema come windows linux ecc… che hanno i più svariati campi di applicazione si tende a infilarci di tutto (magari a scapito di stabilità o di performance) su un sistema aerespaziale/critical mission è necessario eliminare le cose inutili e garantire determinate tempistiche e procedure di “fault tolerance”

Volevo solo fare presente che affermazioni come Windows è instabilissimo, non si può usare, alla NASA usano solo linux o Mac, ecc. sono una bufala. Tralasciando i sistemi di controllo RT per cui Windows non è adatto come diceva oldpaul, il resto dei sistemi NASA è principalmente su infrastruttura Microsoft. E non parlo di postazioni di lavoro, ma anche di server (nel 2005 c’era Windows 2000 Advanced Server), il sito del POIC è un sito Sharepoint, il software EHS per la gestione remota dei payload (inclusi telecomandi), la distribuzione dei dati e la gestione delle operazioni richiede Windows XP. il software TREK (Telescience Resource Kit) per la ricezione e l’analisi dei dati dei payload richiede XP o Vista (!!!), i servizi web richiedono IE, ecc. ecc. I laptop a bordo della stazione che hanno windows sono anche quelli che leggono la telemetria di alcuni strumenti. ALTEA fino al 2007 era gestita da un laptop con Windows NT4.
Solo per presentare una realtà non distorta dai soliti luoghi comuni anti-microsoft.

Si per i sistemi ground, la NASA si affida a Microsoft sia per il M&C che per le operazioni di supporto (real time ops tools, pianificazione, voice loops, etc.). Mediante una VPN su internet e le opportune credenziali ci si collega con il POIC/JSC e si mandano comandi sulla ISS!
L’ESA invece per il la telemetria e telecomandi si affida a sistemi Linux/SUSE e reti geografiche private con centro stella al Columbus Control Center (è + conservativa ma solo per motivi di ritorno economico…)

In realtà il sistema è ibrido. L’MCS (Monitoring and Control System), che è il sistema per mandare comandi e per ricevere la telemetria gira su Linux, ma la telemetria viene letta in consolle su macchine windows usando un altro software. In più va aggiunto che tutto il sistema per la documentazione (Flight Notes, Procedure, Timeline, etc.) gira su Windows. Quindi le consolle del Flight Control Team hanno in genere una macchina Linux e una Windows sulla Operations LAN (telemetria), più una terza macchina Windows sulla Operations Support LAN (documentazione).

Vorrei anche aggiungere che il sito di MCC-H per la OPS Support gira solo e solamente su Internet Explorer. Per fortuna Firefox ha un add-on chiamato IE-Tab :smiley:

In Telespazio/MARS usiamo una versione light del MCS chiamata CD-MCS (con gli acronimi ESA e NASA sono fortissimi) dove CD sta per Columbus Decentralized. In ogni caso si parla di sistemi operativi Linux. Questi sistemi sono sistemi aperti che forwardano/ricevono telemetria e telecomandi a macchine che con le dovute interacce SW possono utilizzare qualsivoglia sistema operativo.
Nel nostro caso noi riutilizziamo il SW di bordo del laptop di FSL (il cosiddetto Human Computer Interface - HCI sviluppato da noi!) che gira su una (o piu’) WS con XP (come a bordo). Le procedure che gli operatori di terrra devono seguire ovviamente tengono conto della doppia possibilità di effettuare le operazioni o con il CDMCS (Linux) o con l’HCI (XP). L’HCI ha sempre funzionato meravigliosamente ed e’ graficamente + usabile del CDMCS.