• Seminario sulla tecnologia Bluetooth proiettato durante il corso di Reti di calcolatori e sicurezza. BLUETOOTH è una tecnologia che consente la realizzazione di comunicazioni wireless a corto raggio (sia per dati che per voce) tra qualsiasi tipo di dispositivo elettronico. Questa comunicazione avviene senza l’intervento manuale esplicito dell’utente; indipendentemente dal dispositivo abilitato a Bluetooth individuato da un altro dispositivo dello stesso tipo, i due dispositivi si sincronizzano automaticamente, dando luogo ad un tipo di rete wireless istantanea.

  • Le memorie di massa, quali i dischi e i nastri magnetici, hanno caratteristiche diverse da quelle della memoria RAM. In primo luogo, sono di tipo non volatile e consentono quindi di conservare a basso costo e per un periodo prolungato di tempo informazioni degli utenti. In secondo luogo, tali memorie hanno dei tempi di indirizzamento variabili che dipendono sia dall'indirizzo richiesto che dallo stato attuale del circuito di indirizzamento. Nel caso di un nastro magnetico, ad esempio, il tempo di indirizzamento dipendera dalla distanza tra la porzione di nastro dove andra eseguita l'operazione di I/O e quella attualmente posizionata dalla testina di lettura/scrittura.

  • E' stato ribadito, a proposito del software di base, che l'unico linguaggio riconosciuto dal calcolatore e il linguaggio macchina binario. Poiche e estremamente disagevole scrivere programmi servendosi di tale linguaggio, sono stati sviluppati programmi traduttori il cui compito e quello di trasformare programmi scritti in uno dei vari linguaggi di programmazione esistenti (il cosiddetto linguaggio sorgente) in programmi scritti in linguaggio macchina.

  • Introduzione alla programmazione dei sistemi operativi e loro evoluzione. Programmi indipendenti dall'hardware e dal sistema operativo - Il primo livello e ovviamente quello che garantisce la massima portabilità dei programmi tra piattaforme hardware e software di tipo diverso. Le specie di molti linguaggi ad alto livello quali Cobol..

  • Dagli anni '60, quando apparvero i primi sistemi operativi multiprogrammati, ad oggi le metodologie di progetto si sono anate no a giungere ad un buon livello di standardizzazione per quanto riguarda la realizzazione di NUCLEI per architetture a memoria centralizzata condivisa. Sono invece tuttora in corso ricerche e approfondimenti per quanto riguarda la progettazione di sistemi operativi per architetture multiprocessore (sistemi con piu CPU) nonche per architetture distribuite (reti di calcolatori, basi di dati distribuite, ecc.). In questo capitolo, si esaminano brevemente alcune delle problematiche piu signi cative attinenti al progetto di NUCLEI di sistemi operativi multiprogrammati

  • Ci riferiamo in questo contesto a le eseguibili contenenti programmi codi - cati in linguaggio macchina e pronti ad essere eseguiti dalla CPU. Chiamiamo indirizzo logico un gruppo di bit che serve a identi care: l'indirizzo della prossima istruzione da eseguire; oppure l'indirizzo di un operando contenuto in RAM (solo nel caso in cui l'istruzione debba accedere ad operandi contenuti nella RAM).

  • I programmi si possono classi care in sequenziali e concorrenti: nel primo caso, l'esecuzione di un programma da luogo ad un singolo processo; nel secondo caso, da luogo a piu processi che competono tra loro per l'uso delle risorse del sistema. Da un punto di vista funzionale, non vi e di erenza tra i due tipi di programmazione: tutto quello che puo essere realizzato da un programma concorrente puo anche essere realizzato da un programma sequenziale.

  • In un sistema operativo dedicato, ogni utente collegato al sistema deve essere in grado, servendosi dei diversi dispositivi di ingresso previsti, di speci care in modo agevole quale tra i vari servizi riconosciuti ed eseguibili dal sistema egli intende ottenere. In conseguenza, il sistema operativo deve includere appositi programmi per riconoscere i segnali di ingresso inviati dall'utente; tali programmi costituiscono complessivamente una interfaccia tra l'utente da una parte, e il resto del sistema operativo e l'hardware dall'altra. Le interfacce dei sistemi operativi possono avere caratteristiche alquanto diverse, anche se il loro compito rimane sempre quello di identi care la richiesta e ettuata dall'utente nonche gli eventuali parametri ad essa associati. Si possono distinguere tre approcci possibili basati, rispettivamente, sull'uso di menu, comandi ed icone.

  • Esistono vari tipi di architetture multi-processo: - Asimmetriche: ad ogni processore è associato un task specifico e c’è un processore master che controlla gli altri. Questo tipo di architettura viene utilizzata in sistemi special purpose (dispositivi con caratteristiche specifiche, quali schede video, audio) - Simmetriche (SMP): ogni processore può eseguire qualsiasi task del sistema operativo, il quale è copiato su ogni processore. I moderni sistemi operativi supportano questa architettura

  • Lo scheduling è l’attività cuore del kernel del s.o. con cui la o le CPU vengono allocate man mano ai vari processi attivi per la loro effettiva esecuzione. In un sistema multi-programmato l’obiettivo è di massimizzare l’utilizzo della CPU. Le politiche di scheduling variano a seconda degli obiettivi specifici che si vogliono raggiungere e del tipo di sistema considerato.

Pagine