Utente:Magna555/Sandbox

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

RTX è un'Estensione Tempo Reale (Real Time eXtension) per Microsoft Windows, sviluppata dall'azienda americana IntervalZero Inc.[1] di Waltham (MA).

Descrizione di RTX

[modifica | modifica wikitesto]

RTX estende le funzionalità di Windows trasformandolo di fatto in un Sistema Operativo Real Time (RTOS), permettendo quindi di sviluppare ed eseguire processi tempo reale mantenendo al contempo invariate tutte le funzionalità offerte da Windows (interfaccia grafica, connettività di rete, amplia offerta di applicativi).

RTX è disponibile per Windows a 64 bit (RTX64) e per Windows a 32 bit (RTX).

Storia di RTX

[modifica | modifica wikitesto]

RTX è stato sviluppato nel 1996 (RTX 3.1) per Windows NT 4.0 dall'azienda che allora si chiamava VenturCom Inc. e che, negli stessi anni, ha concepito Component Integrator[2], uno strumento per creare installazioni personalizzate (embedded) di Windows NT. Component Integrator è stato poi licenziato a Microsoft che lo ha usato come base per il suo Windows NT Embedded 4.0[3]rilasciato nel 1999.

Nel 2004 VenturCom ha cambiato nome in Ardence, estendendo la propria gamma di prodotti con soluzioni per la gestione remota dei sistemi operativi.

Ardence è stata quindi acquisita da Citrix Systems nel 2006[4],

Nel 2008 un gruppo di dipendenti e dirigenti Ardence ha creato lo spin-off IntervalZero[5], partecipata di Citrix Systems, per focalizzarsi unicamente sulle soluzioni tempo reale.

Architettura di RTX

[modifica | modifica wikitesto]

RTX è un programma di Microsoft Windows che si installa a livello Kernel ed aggiunge al Sistema Operativo un nuovo insieme di processi tempo reale gestiti con un proprio scheduler real-time separato; questi processi possono utilizzare Clock e Timer tempo reale (con la risoluzione minima di 1 μsec) ed accedere direttamente alle risorse hardware (memoria fisica, interrupt, porte di I/O, Bus, ...).

Queste funzionalità aggiuntive sono ottenute grazie alla estensione (da qui il termine Extension nel nome del prodotto) all'Hardware Abstraction Layer (HAL), cioè quello strato di Windows che si pone fra l'Hardware ed il Kernel del sistema operativo.

Nei sistemi multicore RTX può essere configurato per ottenere in via esclusiva l'utilizzo di uno o più core per l'esecuzione dei propri processi o thread in modo parallelo.

La versione a 32 bit permette l'assegnazione ad RTX sino a 31 core su 32, ove essi presenti, la versione a 64 bit permette l'assegnazione sino a 63 core su 64.

Sviluppo di applicativi RTX

[modifica | modifica wikitesto]

Gli applicativi RTX si sviluppano in C e C++ e si compilano utilizzando Microsoft Visual Studio nel nel cui IDE RTX installa alcuni wizard per la creazione dei progetti RTX ed un proprio add-on per il debugging simbolico dei propri processi.

Lo sviluppo di applicativi RTX è basato su funzioni Win32 integrate da funzioni proprietarie specifiche di RTX (RTAPI) che implementano le caratteristiche tempo reale non presenti in Windows.

RTX e le risorse di sistema

[modifica | modifica wikitesto]

Gli applicativi RTX permettono di pilotare direttamente le risorse hardware del PC, ma richiedono l'utilizzo esclusivo di queste risorse. i driver di Windows infatti non sono real time e l'eventuale condivisione di una risorsa, ad esempio in interrupt, con un driver standard di Windows comprometterebbe il suo utilizzo in tempo reale.

Il dispositivo viene quindi "convertito" per essere pilotato da RTX e non più dal driver Windows standard; questo significa che se una scheda del PC deve essere pilotata da RTX (ad esempio una scheda di rete) questa scheda non sarà più "vista" da Windows come scheda di rete standard.

Ecosistema RTX

[modifica | modifica wikitesto]

Il prodotto RTX esiste dal 1996, in questi anni numerose aziende costruttrici di soluzioni hardware e software per l'industria hanno sviluppato per i loro prodotti un driver RTX.

Le categorie sono: schede di comunicazione per protocolli industriali, software di controllo, schede di I/O - acquisizione, schede per la visione artificiale, ...

In generale l'idea alla base dell'architettura di RTX è di aggiungere a Windows solo quello che gli manca per diventare un RTOS, tutte le funzionalità standard e non tempo reale già disponibili in Windows non sono duplicate ad RTX che si affida Windows per eseguirle (visualizzazione e grafica, gestione dei file e della memoria, ...).

Applicativi RTX

Un applicativo RTX è allo stesso tempo un applicativo che gira su Windows, per questa ragione quasi tutti gli applicativi RTX sono formati da almeno due processi, uno cge "gira" in RTX e che ha prestazioni tempo reale, capacità di accedere direttamente all'hardware, caratteristiche di determinismo stresso) ed un'altra, che di solito comporta la parte maggiore di codice sviluppato, che "gira sotto Windows e comunica e si sincronizza con la parte tempo reale. Gli eseguibili RTX possono essere -RTSS o . RTDD differenze

Funzionalità

[modifica | modifica wikitesto]

Settori di utilizzo

[modifica | modifica wikitesto]
  1. ^ IntervalZero Inc., su intervalzero.com.
  2. ^ VenturCom Launches Component Integrator v3.4 for Windows NT, in EE Times, 23/09/1996.
  3. ^ Microsoft Download Center, Windows NT Embedded 4.0 Technical Documentation, su microsoft.com.
  4. ^ John Cox, Citrix acquires Ardence for PC, server provisioning, in Network World, 20/12/2006.
  5. ^ IntervalZero acquires Ardence embedded software business, in Automation.com, 28/07/2008.