Il sistema operativo di un computer è progettato per... Sistema operativo. Sistemi operativi per dispositivi mobili

Un sistema operativo (OS) è un pacchetto software che fornisce l'interazione tra l'utente e l'hardware del computer. Ad esempio, Windows, Linux e Mac OSX. Per dirla in modo un po' più semplice, il sistema è un insieme di codici di programma che consente di eseguire programmi sul computer, visualizzare grafica sul monitor, percepire e interpretare segnali dal mouse e dalla tastiera, stampare documenti, accedere a Internet e Presto. Non si tratta però soltanto di un insieme di utilità disparate, ma di qualcosa di più, ma andiamo con ordine

Nota: L'articolo è destinato ai principianti e agli utenti ordinari.

Nota: I sistemi operativi più diffusi sono Windows, varie build di Linux e Mac OSX.

Scopo e tipi di sistema operativo

Fondamentalmente il sistema operativo ha il seguente scopo:

1. Controllo dei dispositivi hardware del computer, compreso l'invio e la ricezione di informazioni da dispositivi periferici. In altre parole, coordina il funzionamento di tutte le apparecchiature, monitora l’implementazione, ecc.

2. Fornire interfacce o capacità per trasmettere istruzioni da programmi a dispositivi hardware. Ad esempio, in modo che i giocattoli possano utilizzare la scheda video

3. È uno strato tra l'utente e il computer

4. Non è un requisito obbligatorio, ma oggi è presente in quasi tutti i sistemi operativi. Fornire funzionalità aggiuntive per gli utenti. Ad esempio, organizzare il controllo degli accessi (sicurezza)

I sistemi operativi sono generalmente divisi in 4 tipologie:

1. Utente singolo, operazione singola. Come suggerisce il nome, il sistema è progettato per un utente e un'attività.

2. Single-tasking per utente singolo con un'attività in background aggiuntiva. Consente di eseguire un'altra attività aggiuntiva in background. In genere, l'attività in background è la stampa

3. Multitasking per utente singolo. Supporta un solo utente, ma consente di eseguire più attività contemporaneamente

4. Multitasking multiutente. Tutto è semplice qui. Ci sono molti utenti che eseguono molte attività.

Tieni presente che in linea di principio non possono esistere sistemi multiutente single-tasking, poiché ogni utente sul computer rappresenta un'attività separata nel sistema operativo.

Inoltre i sistemi operativi sono a 32 e 64 bit.

Da cosa è composto il sistema operativo?

Come già accennato, un sistema operativo è un pacchetto software che ti consente di utilizzare i dispositivi del tuo computer. Pertanto, è suddiviso in diversi livelli.

In breve, un sistema operativo è solitamente costituito da quanto segue:

2. Autisti

3. Servizi o pacchetti di strumenti

4. Conchiglia

5. Modulo di comando

Nota: Vale la pena sapere che i sistemi operativi per microcontrollori potrebbero non contenere tutto quanto sopra (semplicemente non ce n'è bisogno).

Ora, vediamolo in ordine:

Il kernel è la parte più importante del sistema operativo. Contiene tutti i meccanismi necessari per coordinare e gestire tutti gli altri componenti.

I driver sono codici software (non necessariamente un programma o una libreria) che consentono al kernel del sistema operativo di interagire correttamente con i dispositivi hardware. Vale la pena sapere che esistono driver standard che forniscono un set minimo di funzionalità e driver dei produttori che consentono di utilizzare il dispositivo al massimo.

I servizi o i pacchetti di strumenti sono programmi separati che consentono al sistema operativo di fornire funzionalità aggiuntive.

La shell è l'interfaccia che vede l'utente. È grazie a lui che l'utente può avviare programmi ed eseguire altre azioni.

Un modulo di comando è un programma utente che viene eseguito sul sistema operativo.

Cosa succede all'interno del sistema operativo

Tutta l'interazione all'interno del sistema operativo si basa sulle cosiddette chiamate di sistema, che rappresentano uno strato tra le richieste dei programmi utente e dei dispositivi informatici. Come può succedere? L'utente avvia il programma, che a sua volta invia una chiamata di sistema ai servizi del sistema operativo. Ad esempio, "apri il file per la lettura". I servizi accedono al kernel del sistema, che quindi accede ai dispositivi del computer tramite i driver. Nel caso dell'esempio al driver del disco rigido, che successivamente invia comandi al dispositivo.

I dispositivi hardware del computer hanno un principio simile, solo che sono tutti basati su interruzioni, che sono segnali speciali che indicano determinate azioni. Ad esempio, completare un'attività, prepararsi prima del trasferimento dei dati, ecc.

Questo approccio consente al sistema operativo di fornire resilienza quando si verificano errori. Tuttavia, se si verificano errori a livello del kernel, solitamente il sistema si blocca. Ad esempio, in Windows questa è la schermata blu della morte.

Come si avvia il sistema operativo

Il sistema operativo si carica in più fasi:

1. Innanzitutto, il sistema incorporato del computer (

Allora, cos'è un sistema operativo su un computer? Il sistema operativo è il software più importante eseguito su un computer. Gestisce la memoria, i processi e tutto il software e l'hardware. Possiamo dire che il sistema operativo è un ponte tra un computer e una persona. Perché senza sistema operativo il computer è inutile.

Apple Mac OS X

Mac OS è una linea di sistemi operativi creata da Apple. Viene preinstallato su tutti i nuovi computer Macintosh o Mac. Le ultime versioni di questo sistema operativo sono conosciute come OS X. Vale a dire Yosetime(pubblicato nel 2014), Anticonformisti (2013), Montagna Leone (2012), Leone(2011) e Mostra Leopardo(2009). C'è anche Server Mac OS X, progettato per essere eseguito sui server.

Secondo le statistiche generali di StatCounter Global Stats, la percentuale di utenti Mac OS X è pari al 9,5% del mercato dei sistemi operativi, a settembre 2014. Questo è molto inferiore alla percentuale di utenti Windows (quasi 90% ). Uno dei motivi è che i computer Apple sono molto costosi.

Linux

Linux è una famiglia di sistemi operativi open source. Ciò significa che possono essere modificati (cambiati) e distribuiti da chiunque in tutto il mondo. Ciò rende questo sistema operativo molto diverso da altri come Windows, che può essere modificato e distribuito solo dal proprietario (Microsoft). I vantaggi di Linux sono che è gratuito e ci sono molte versioni diverse tra cui scegliere. Ogni versione ha il suo aspetto e quelle più popolari lo sono Ubuntu, menta E Fedora.

Linux prende il nome da Linus Torvalds, che pose le basi per Linux nel 1991.

Secondo StatCounter Global Stats, a settembre 2014 la percentuale di utenti Linux è inferiore al 2% del mercato dei sistemi operativi. Tuttavia, grazie alla flessibilità e alla facilità di configurazione, la maggior parte dei server funziona su Linux.

Sistemi operativi per dispositivi mobili

Tutti i sistemi operativi di cui abbiamo parlato sopra sono progettati per computer desktop e portatili, come un laptop. Esistono sistemi operativi progettati specificamente per dispositivi mobili, come telefoni e lettori MP3, ad esempio. Apple, iOS, Windows Phone E GoogleAndroid. Nell'immagine qui sotto puoi vedere Apple iOS in esecuzione su un iPad.

Naturalmente non sono funzionali quanto i sistemi operativi dei computer, ma sono comunque in grado di svolgere molte attività di base. Ad esempio, guardare film, navigare in Internet, eseguire applicazioni, giochi, ecc.

È tutto. Lascia nei commenti quale sistema operativo usi e perché ti piace

Oggi, gran parte della popolazione mondiale interagisce regolarmente con i computer, alcuni sono obbligati a lavorare, altri cercano informazioni su Internet e altri ancora semplicemente trascorrono il tempo giocando. Ognuno ha le proprie esigenze, il che significa che il computer deve soddisfarle. E se parliamo di “hardware” (la componente tecnica di un computer), allora tutto è più o meno chiaro: più nuovo è, meglio è. Ma la parte “software” richiede un’attenzione particolare.

Ogni computer esegue un sistema operativo specifico, di cui ce ne sono moltissimi, ognuno dei quali è adatto a determinati compiti, attrezzature disponibili e così via. Pertanto, un fattore importante è la scelta di questo sistema operativo.

L'elenco dei sistemi operativi è piuttosto vasto, ma questo articolo si concentrerà su tre pilastri che hanno fortemente influenzato il settore e occupano la quota maggiore tra tutti i sistemi operativi: Windows, MacOS e Linux.

Sistemi operativi proprietari

Per cominciare è bene chiarire che esistono sistemi operativi proprietari, quelli che vengono distribuiti sotto la licenza del produttore. Questi includono Windows, il cui elenco è riportato di seguito, e MacOS. Nonostante entrambi i sistemi possano essere scaricati da Internet (rubati), la cosa giusta da fare è acquistare una licenza dalla società di distribuzione e attivarla.

Il vantaggio di tali sistemi è il loro sviluppo, un'enorme quantità di software di alta qualità e un supporto tecnico competente che aiuterà in caso di problemi.

Sistemi operativi “gratuiti”.

Questi includono quasi l'intera famiglia Linux, ad eccezione di alcuni sviluppi con software contabili o altri software professionali. Questi sistemi operativi possono essere scaricati in modo assolutamente gratuito e installati su qualsiasi computer senza un rimorso di coscienza.

Tali sistemi sono creati da sviluppatori indipendenti insieme alla comunità, quindi nella maggior parte dei casi la qualità dei programmi lascia molto a desiderare, ma tali sistemi sono molto più sicuri e funzionano in modo più stabile rispetto ai loro concorrenti proprietari.

finestre

Assolutamente chiunque abbia mai avuto a che fare con un computer conosce questo prodotto Microsoft. Ciò riguarda in particolare il rilascio di grande successo di Windows 7. L'elenco dei sistemi operativi Microsoft risale a una dozzina di generazioni. Sono estremamente popolari in tutto il mondo e occupano quasi il 90% del mercato. Il che parla di una leadership senza precedenti.

  • Windows XP;
  • Windows Vista;
  • Windows 7;
  • Windows 8;
  • Windows 10;

L'elenco inizia intenzionalmente con Windows XP, poiché è la versione più vecchia ancora in uso oggi.

Sistema operativo Chrome

Un prodotto sottosviluppato di Google, limitato solo alle applicazioni web e al browser con lo stesso nome. Questo sistema non è competitivo con Windows e Mac, ma è realizzato con uno sguardo rivolto al futuro in cui le interfacce web potranno sostituire il software “reale”. Installato per impostazione predefinita su tutti i Chromebook.

Installazione di più sistemi e utilizzo di macchine virtuali

Poiché ogni piattaforma ha i suoi pro e contro, spesso diventa necessario lavorare con più piattaforme contemporaneamente. Gli sviluppatori di computer lo sanno, quindi offrono agli utenti l'opportunità di installare due o tre sistemi contemporaneamente su un disco.

Questo viene fatto semplicemente. Tutto ciò di cui hai bisogno è un kit di distribuzione del sistema (un disco o un'unità flash con materiale di installazione caricato su di esso) e spazio libero sul tuo disco rigido. Tutti i sistemi operativi moderni offrono la possibilità di allocare spazio durante l'installazione e creare un meccanismo di avvio che mostrerà un elenco di sistemi operativi all'avvio del computer. Tutto avviene in modo semiautomatico e può essere eseguito da qualsiasi utente.

I computer Apple dispongono di un'utilità speciale: BootCamp, progettata per l'installazione semplice e senza interruzioni di Windows accanto a MacOS.

C'è un altro modo: installare un sistema virtuale all'interno di uno reale. A tale scopo vengono utilizzati i seguenti programmi: VmWare e VirtualBox, che sono in grado di emulare il funzionamento di un computer a tutti gli effetti e di avviare sistemi operativi.

Invece di una conclusione

L'elenco dei sistemi operativi per un computer non si limita a quanto sopra. Esistono molti prodotti di diverse aziende, ma sono tutti abbastanza specifici e non meritano l'attenzione dell'utente medio. Vale la pena scegliere tra Windows, MacOS e Linux, poiché possono coprire la maggior parte delle esigenze e sono abbastanza facili da imparare.

Software di sistema di base

Il software di base include:

sistema operativo (OS);

· shell operative (testo e grafica);

· sistema operativo di rete.

sistema operativo progettato per controllare l'esecuzione dei programmi utente, pianificare e gestire le risorse informatiche del computer.

Nel settore del software e dei sistemi operativi la posizione di leader è occupata dalla famiglia di sistemi MS Windows. Diamo un'occhiata ai tipi più comuni di sistemi operativi.

I sistemi operativi per personal computer si dividono in:

· single e multitasking (a seconda del numero di processi applicativi in ​​esecuzione parallela);

· utente singolo e multiutente (a seconda del numero di utenti che lavorano contemporaneamente con il sistema operativo);

· non portabili e trasferibili su altri tipi di computer;

· non di rete e di rete, fornendo lavoro in una rete informatica locale.

Sistemi operativi di rete - un insieme di programmi che forniscono elaborazione, trasmissione e archiviazione di dati sulla rete. Il sistema operativo di rete fornisce agli utenti vari tipi di servizi di rete (gestione dei file, posta elettronica, processi di gestione della rete, ecc.) e supporta il lavoro nei sistemi di abbonamento.

Gusci operativi - programmi speciali progettati per facilitare la comunicazione dell'utente con i comandi del sistema operativo. Le shell operative dispongono di opzioni di interfaccia utente grafica e testuale.

I tipi più popolari di shell di testo del sistema operativo sono: Total Commander, Windows Commander, ecc.

Diamo uno sguardo più da vicino al sistema operativo.

sistema operativo- un insieme di software che fornisce il controllo dell'hardware del computer e dei programmi applicativi, nonché la loro interazione tra loro e con l'utente.

Il sistema operativo svolge le seguenti funzioni:

· gestione del funzionamento di ciascun blocco di un personal computer e della loro interazione;

· gestione dell'esecuzione del programma;

· organizzazione dell'archiviazione delle informazioni nella memoria esterna;

· interazione dell'utente con il computer, ad es. supporto dell'interfaccia utente.

In genere, il sistema operativo è archiviato su un disco rigido e, se non è presente alcun disco rigido, viene allocata un'unità speciale, denominata unità di sistema. Quando accendi il computer, il sistema operativo viene automaticamente caricato dal disco nella RAM e occupa un certo spazio al suo interno. Un sistema operativo viene creato non per un singolo modello di computer, ma per una serie di computer, nella struttura dei quali un determinato concetto è incorporato e sviluppato in tutti i modelli successivi.



Qualsiasi sistema operativo si basa sul principio di organizzazione del funzionamento di un dispositivo di archiviazione delle informazioni esterno. Nonostante il fatto che la memoria esterna possa essere tecnicamente implementata su diversi supporti materiali, sono accomunati dal principio adottato nel sistema operativo di organizzare l'archiviazione di insiemi di informazioni logicamente correlate sotto forma di cosiddetti file.

File- una raccolta logicamente connessa di dati o programmi, per il posizionamento dei quali viene allocata un'area denominata nella memoria esterna.

Il file funge da unità contabile di informazioni nel sistema operativo. Tutte le azioni con informazioni vengono eseguite sui file.

I file possono memorizzare vari tipi e forme di presentazione delle informazioni: testi, immagini, disegni, numeri, programmi, tabelle, ecc. Le caratteristiche di file specifici sono determinate dal loro formato. Un formato è un elemento del linguaggio che descrive simbolicamente la presentazione delle informazioni in un file.

Per caratterizzare il file vengono utilizzati i seguenti parametri:

· nome completo del file;

· dimensione del file in byte;

· data e ora di creazione del file;

· attributi speciali dei file: sola lettura, nascosto, di sistema, archiviato.

I sistemi operativi occupano un posto speciale tra i software di tutti i tipi, essendo il kernel.

sistema operativo (sistema operativo)è un insieme di programmi che forniscono:

  • gestione delle risorse, ad es. funzionamento coordinato di tutto l'hardware del computer;
  • gestione del processo, es. esecuzione di programmi, loro interazione con dispositivi e dati informatici;
  • interfaccia utente, ad es. dialogo tra l'utente e il computer, esecuzione di alcuni semplici comandi - operazioni di elaborazione delle informazioni.

Il sistema operativo è un ambiente operativo, un habitat (per i programmi) e ha le proprie leggi.

sistema operativo è un insieme di programmi che forniscela capacità di utilizzare apparecchiature PC, nonchégarantisce il funzionamento congiunto di tuttiDispositivi PC e fornisce all'utente l'accesso ale sue risorse.

Il sistema operativo è un componente fondamentale e necessario del software per PC

sistema operativo- il tipo di software più dipendente dalla macchina, focalizzato su modelli di computer specifici, poiché controllano direttamente i loro dispositivi o forniscono un'interfaccia tra l'utente e l'hardware del computer.

Il sistema operativo è un insieme di strumenti software che consentono all'utente di utilizzare le funzionalità del computer.

Il sistema operativo è lo strumento software principale che “dà vita” a un computer. Senza di esso, il computer semplicemente non funzionerà. Il sistema operativo controlla le operazioni di scambio con i dischi, organizza la visualizzazione delle informazioni sullo schermo, "comprende" la tastiera, ecc.

Attività implementate dal sistema operativo

1 . Supportare il funzionamento di tutti i programmi e organizzare la loro interazione con i dispositivi PC:

    garantire l'efficace attuazione delle operazioni di input e output delle informazioni (comunicazione con dispositivi aviotrasportati);

    distribuzione della memoria e organizzazione dell'archiviazione dei dati;

    garantire l'interazione di programmi e dati, nonché l'interazione dei programmi tra loro;

    identificare i vari eventi che si verificano durante il processo di lavoro e reagire in modo appropriato ad essi.

2. Fornire all'utente il controllo generale del PC:

    definire l'interfaccia utente, ad es. creare un ambiente comodo e confortevole per la comunicazione tra una persona e un PC;

    garantire la divisione delle risorse hardware tra utenti e attività, pianificare l'accesso degli utenti ai dati condivisi e fornire la possibilità di lavorare con loro in modalità condivisa (lavoro in rete).

I sistemi operativi moderni forniscono:

  1. cordialità, semplicità e naturalezza dell'interfaccia;
  2. crittografia dei dati per proteggerli da accessi non autorizzati;
  3. distribuzione automatica della capacità di elaborazione dei dati;
  4. supporto per reti informatiche e strumenti di elaborazione dati in tempo reale;
  5. la capacità di utilizzare i singoli PC come terminali “intelligenti” di potenti reti informatiche;
  6. supporto per il funzionamento di DBMS e altri potenti programmi applicativi;
  7. la capacità di simulare macchine virtuali (quando l'utente lavora come se non con la macchina stessa, ma con il suo modello. Per questo vengono utilizzati gli emulatori).

Composizione del sistema operativo

Attualmente, per computer di vario tipo vengono utilizzati molti tipi di sistemi operativi diversi, ma nella loro struttura esistono principi generali. Come parte di molti sistemi operativi, si può distinguere una certa parte, che è la base dell'intero sistema e viene chiamata nucleo. Il kernel include i moduli utilizzati più frequentemente, come un modulo di controllo del sistema di interruzione, e mezzi per distribuire risorse di base come OP e processore. All'avvio del sistema operativo, i programmi che fanno parte del kernel vengono inseriti nella RAM, dove vengono posizionati in modo permanente e utilizzati durante il funzionamento del computer. Tali programmi sono chiamati programmi residenti.

Kernel (parte residente del sistema operativo)– occupa costantemente una sezione della RAM. Nell'OP viene caricato dal disco di sistema all'accensione del computer. Questa procedura è chiamata caricamento iniziale.

Il kernel del sistema operativo fornisce funzioni di base per il software circostante e consente l'espansione della parte operativa del sistema operativo.

L'ambiente del kernel del sistema operativo include utilità, editor, compilatori e altri software che costituiscono la parte operativa del sistema operativo.

Una parte importante del sistema operativo è processore di comandi– un programma responsabile dell'interpretazione e dell'esecuzione di semplici comandi forniti dall'utente e della sua interazione con il kernel del sistema operativo.

Processore di comandi– un programma speciale che richiede ed esegue i comandi dell'utente.

Funzioni svolte:

  1. fornisce l'input del comando e ne analizza la correttezza;
  2. garantisce che il comando venga eseguito se è stato inserito correttamente o fornisce un messaggio su una situazione di conflitto che si è verificata.

Inoltre, il sistema operativo dovrebbe includere un ricco set di utilità– solitamente piccoli programmi che svolgono varie funzioni di servizio.

Una struttura semplificata del sistema operativo può essere rappresentata come un diagramma

File system BDOS – un sistema operativo su disco di base gestito tramite moduli software speciali. Funzioni principali: lavorare con file, allocazione della memoria, supporto per l'esecuzione del programma, caricamento dei dati in memoria, monitoraggio dell'esecuzione del programma, ecc.

Sistema di guida BIOS – sistema input-output di base. Si tratta di un insieme di programmi speciali chiamati driver.

Come sai, un PC può avere un'ampia varietà di dispositivi esterni. Ogni dispositivo esterno è caratterizzato da una propria larghezza di banda e struttura dei dati trasmessi/ricevuti. Questo è il motivo per cui ogni dispositivo esterno ha il proprio driver.

Autisti dispositivi – programmi speciali che forniscono il controllo del funzionamento dei dispositivi e il coordinamento dello scambio di informazioni. Consente inoltre di configurare i parametri del dispositivo

Autista – programma di controllo al servizio del modulo hardware.

I driver per i dispositivi più comunemente utilizzati (display, tastiera, unità disco e talvolta stampante) costituiscono la parte principale del BIOS.

Se BDOS è una parte praticamente invariata del sistema operativo per tutti i PC che lo supportano, il BIOS può variare in modo significativo anche sullo stesso PC a seconda del tipo di periferica commutata.

Quindi la strutturasala operatoriasistemiconsiste di:

Nucleo– traduce i comandi da un linguaggio di programma in un linguaggio “codice macchina” comprensibile al computer (interprete dei comandi).
Autisti– programmi che controllano i dispositivi.
Interfaccia– una shell attraverso la quale l'utente comunica con il computer.

I file di avvio del sistema operativo vengono archiviati nella memoria esterna. (dischi floppy, rigidi, ottici). Tuttavia, qualsiasi programma, come il sistema operativo stesso, può essere eseguito solo nella RAM. Pertanto, devono essere caricati lì.

  1. Quando accendi il PC, il chip con BIOS (Di baseIngresso/ Sistema di uscita) sistema di input/output di base. Il BIOS esegue il programma POST, che testa l'hardware del PC. Per impostazione della data e dell'ora, nonché per l'impostazione del funzionamento dell'hardware, con utilizzando il tasto Canc è possibile scaricare l'utilità Impostare.
  2. Dopo il test, il BIOS inizia a cercare il boot loader del sistema operativo ( Avvio principaleDocumentazione), passando a turno a FDD, HDD, CD-ROM.

    Dopo aver trovato il programma bootloader sul disco di sistema, viene caricato nella RAM e ad esso viene trasferito il controllo del funzionamento del PC.

    Il programma cerca i file del sistema operativo sul disco di sistema e li carica nella RAM come moduli di programma.
    Una volta completato il caricamento, il sistema operativo trasferisce il controllo al processore dei comandi.

Principi di funzionamento dei sistemi operativi

Concetto processi gioca un ruolo fondamentale e viene introdotto in relazione ad ogni singolo programma utente. La gestione dei processi (sia nel loro insieme che individualmente) è la funzione più importante del sistema operativo. Quando si eseguono programmi sul processore centrale, è necessario distinguere i seguenti stati caratteristici:

  • generazione – predisporre le condizioni per l'esecuzione da parte del responsabile del trattamento;
  • stato attivo (o “Account”) – esecuzione diretta da parte del responsabile del trattamento;
  • aspettativa – a causa dell'impegno di qualsiasi risorsa richiesta;
  • prontezza – il programma non viene eseguito, ma vengono fornite tutte le risorse necessarie per l'esecuzione del programma, ad eccezione del processore centrale;
  • fine – interruzione normale o anormale dell'esecuzione del programma, dopo la quale il processore e altre risorse non gli vengono fornite.

Risorse fisiche– dispositivi informatici reali.

I moderni sistemi operativi possono essere utilizzati per creare e utilizzare risorse virtuali (immaginarie), che sono modelli di quelli fisici.

In termini di importanza, le risorse virtuali sono uno dei concetti più importanti nella costruzione di sistemi operativi moderni.

Risorsa virtualeè un modello di una determinata risorsa fisica creata utilizzando un'altra risorsa fisica. Ad esempio, un tipico rappresentante di una risorsa virtuale è la RAM. I computer, di regola, hanno un sistema operativo (fisico) limitato. Funzionalmente il suo volume può essere aumentato registrando parzialmente il contenuto dell'OP su un disco magnetico. Se questo processo è organizzato in modo tale che l'utente percepisca tutta la memoria estesa come RAM, allora tale memoria "RAM" viene chiamata virtuale.

Memoria virtuale– una porzione di memoria che eccede la quantità fisica di RAM installata nel computer e che il sistema operativo emula utilizzando lo spazio sul disco rigido (file di scambio). I programmi eseguiti in Windows trattano la memoria virtuale come RAM.

Scambia file– un file permanente o temporaneo sul disco rigido utilizzato dal sistema operativo per emulare la RAM.

La manifestazione più completa del concetto di virtualità è il concetto di macchina virtuale, che è il punto di partenza per la programmazione in linguaggi di alto livello, ad esempio Pascal. Macchina virtuale esiste un modello idealizzato di una macchina reale, che isola l'utente dalle caratteristiche hardware di un particolare computer, riproducendo l'architettura di una macchina reale, ma con caratteristiche migliorate:

  • memoria infinita con metodi selezionati casualmente per accedere ai suoi dati;
  • uno (o più) processi descritti in un linguaggio di programmazione user-friendly;
  • un numero arbitrario di dispositivi esterni di capacità e accesso arbitrari.

Concetto interrompe l'esecuzione del programma è fondamentale quando si costruisce qualsiasi sistema operativo.

Di tutta la diversità motivi Esistono due tipi di interruzioni: il primo e il secondo tipo. Le cause sistemiche di interruzioni del primo tipo sorgono quando un processo in uno stato attivo ha la necessità di ottenere o rifiutare una determinata risorsa, o di eseguire qualche azione sulla risorsa. Questo gruppo include anche il cosiddetto interruzioni interne Problemi relativi alla CPU (ad esempio, overflow aritmetico o underrun in virgola mobile). Le ragioni di sistema per le interruzioni del secondo tipo sono dovute alla necessità di sincronizzazione tra processi paralleli.

Durante l'elaborazione di ciascun interrupt, è necessario eseguire la seguente sequenza di azioni:

  • percezione della richiesta di interruzione;
  • memorizzare lo stato di un processo interrotto, determinato dal valore del contatore del programma e di altri registri del processore;
  • trasferimento del controllo al programma di interruzione, per il quale l'indirizzo corrispondente a questo tipo di interruzione viene inserito nel contatore del programma;
  • gestione delle interruzioni;
  • ripristinare un processo interrotto.

Nella maggior parte dei computer, le prime tre fasi sono implementate nell'hardware, mentre le restanti sono implementate da un blocco di programmi di gestione degli interrupt nel sistema operativo.

Classificazione del sistema operativo

1. In base al numero di utenti simultanei:

  • singolo utente;

    (destinato a servire un cliente)

  • multiutente

    (progettato per un gruppo di utenti contemporaneamente).

La principale differenza tra i sistemi multiutente e i sistemi monoutente è la disponibilità di mezzi per proteggere le informazioni di ciascun utente dall’accesso non autorizzato da parte di altri utenti.

2. In base al numero di attività eseguite simultaneamente sotto il controllo del sistema operativo:

  • monotasking;
  • multitasking.

Nella modalità multitasking, a ciascuna attività (programma, applicazione) viene assegnata alternativamente una determinata quota del tempo del processore. Poiché il processo di commutazione è molto veloce e la quota di tempo del processore assegnata alle attività è piuttosto ridotta, l'utente ha l'impressione dell'esecuzione simultanea di più attività.

Puoi eseguire contemporaneamente un sistema matematico sul tuo account, accendere la stampante per stampare testo, avviare un lettore musicale, cercare virus e disegnare in un editor grafico o giocare a solitario.

Durante il multitasking:

  • ci sono diverse attività utente nella RAM;
  • il tempo di funzionamento del processore è suddiviso tra programmi posizionati nella RAM e pronti per essere serviti dal processore;
  • Parallelamente al funzionamento del processore, le informazioni vengono scambiate con vari dispositivi esterni.

Distinguere spostamento E non repressivo multitasking.

Quando si utilizza un computer, la risorsa condivisa più importante è il tempo del processore. La distribuzione del tempo del processore tra diversi programmi può essere eseguita in due modi.

La differenza principale tra il multitasking preventivo e non preventivo è grado di centralizzazione del meccanismo di pianificazione dei processi informatici. A multitasking senza prelazione Il processo attivo viene eseguito finché, di propria iniziativa, cede il controllo al sistema operativo in modo che selezioni un altro processo pronto per essere eseguito dalla coda. A multitasking preventivo La decisione di spostare il processore da un processo a un altro viene presa dal sistema operativo, non dal processo attivo stesso.

I sistemi operativi multitasking si dividono in tre tipologie in base ai criteri di efficienza utilizzati nel loro sviluppo:

  • sistemi di elaborazione batch;
  • sistemi di condivisione del tempo;
  • sistemi in tempo reale.

Sistemi di elaborazione batch sono destinati alla risoluzione di problemi prevalentemente di natura computazionale che non richiedono risultati rapidi. L'obiettivo principale di tali sistemi è risolvere il numero massimo di problemi per unità di tempo. Per raggiungere questo obiettivo viene utilizzato il seguente schema operativo.

All'inizio del lavoro viene formato un pacchetto di compiti (miscela multiprogramma). È auspicabile la presenza simultanea di compiti computazionali e compiti con intenso input-output di informazioni. La scelta di una nuova attività dal pacchetto dipende dalla situazione interna del sistema, ad es. viene selezionata un'attività "vantaggiosa" per il sistema operativo. Di conseguenza, in tali sistemi operativi è impossibile garantire il completamento di una determinata attività entro un certo periodo di tempo.

L'interazione di un utente con un computer su cui è installato un sistema operativo di elaborazione batch si riduce al fatto che l'utente porta un'attività, la consegna all'operatore del dispatcher e alla fine della giornata riceve il risultato. Ovviamente, questa disposizione riduce l'efficienza dell'utente.

Sistema operativo per la condivisione del tempo consentono di correggere lo svantaggio principale dei sistemi di elaborazione batch: isolare l'utente dal processo di esecuzione delle sue attività. Ad ogni utente viene fornito un terminale dal quale può controllare il processo di calcolo. Perché a ogni attività viene assegnata solo una parte del tempo della CPU, nessuna attività occupa a lungo il processore e i tempi di risposta sono accettabili. Se il quanto viene scelto sufficientemente piccolo, tutti gli utenti che lavorano contemporaneamente sullo stesso computer hanno l'impressione che ciascuno di loro utilizzi esclusivamente la macchina.

I sistemi operativi in ​​time-sharing hanno una produttività inferiore rispetto ai sistemi di elaborazione batch perché Ogni attività avviata dall'utente viene accettata per l'esecuzione, e non quella “benefica” per il sistema operativo e, inoltre, c'è il sovraccarico di cambiare il processore più frequentemente da un'attività all'altra. Il criterio per l'efficacia dei sistemi di time sharing non è la massima produttività del computer (velocità di elaborazione delle informazioni), ma la comodità e l'efficienza del singolo utente.

Il più avanzato e complesso multitasking multiutente i sistemi operativi che consentono l'esecuzione simultanea di molte attività da parte di più utenti forniscono la separazione risorse informatiche in base alle priorità dell'utente e protezione dati ciascun utente da accessi non autorizzati. In questo caso viene eseguito il run-in del sistema operativo condivisione del tempo, cioè. serve molti utenti, ognuno dei quali lavora dal proprio terminale.

L'essenza della modalità di condivisione del tempo è la seguente. Ad ogni programma situato nella RAM e pronto per l'esecuzione viene assegnato un intervallo di tempo fisso (intervallo di multiplexing) per l'esecuzione, impostato in base alla priorità dell'utente. Se il programma non viene completato completamente entro questo intervallo, la sua esecuzione viene interrotta forzatamente e il programma viene spostato alla fine della coda. Il programma successivo viene recuperato dall'inizio della coda, eseguito durante il corrispondente intervallo di multiplexing, quindi va alla fine della coda e così via. secondo l'algoritmo ciclico. Se l'intervallo di multiplexing è sufficientemente piccolo (~200 ms) e la lunghezza media della coda di programmi pronti per l'esecuzione è piccola (~10), il successivo intervallo di tempo viene allocato al programma ogni 2 s. In queste condizioni, praticamente nessuno degli utenti riscontra ritardi, perché... sono paragonabili al tempo di reazione umana.

Una priorità(priorità) – importanza relativa o urgenza.

Una priorità– questo ha un vantaggio, cioè un requisito di maggiore attenzione, che può essere determinato da un valore quantitativo preso in considerazione quando si determina l'ordine in cui vengono soddisfatte diverse richieste di accesso a una risorsa.

Assegnare priorità: stabilire una sequenza di azioni in base all'urgenza o all'importanza del lavoro. Nella modalità multiprogramma, ai programmi vengono assegnate priorità in modo che il lavoro urgente non venga ritardato da attività ausiliarie. Gli interrupt software dovrebbero essere gestiti in modo simile alla modalità multiprogramma.

Un tipo di modalità di condivisione del tempo è modalità di sfondo quando un programma con una priorità più bassa viene eseguito sullo sfondo di un programma con una priorità più alta. Lavorare in background in tempo reale è simile al lavoro di una segretaria direzionale. Il segretario si occupa degli affari correnti finché il capo non dà un ordine urgente.

Sistemi in tempo reale vengono utilizzati per controllare vari oggetti tecnici (trasportatore, macchina utensile, robot, veicolo spaziale, installazione sperimentale scientifica, linea galvanica, altoforno, macchina automatica per il controllo della qualità del prodotto). Esiste un tempo massimo consentito durante il quale un particolare programma che controlla un oggetto deve essere eseguito. Il sistema deve avere tempo di reazione garantito, cioè. Il ritardo della risposta non dovrebbe superare un certo tempo. In caso contrario, potrebbe verificarsi un incidente (il satellite scomparirà dalla vista; i dati sperimentali provenienti dai sensori andranno persi; lo spessore del rivestimento galvanico non corrisponderà alla norma; i prodotti difettosi finiranno nel ricevitore di prodotti idonei) .

Pertanto, il criterio di efficienza per i sistemi in tempo reale è la loro capacità di resistere a intervalli di tempo predeterminati tra il lancio di un programma e l'ottenimento di un risultato (azione di controllo).

Il computer controlla alcuni processi esterni, elaborando dati e informazioni provenienti direttamente dall'oggetto di controllo. Poiché il fattore determinante sono i dati effettivamente provenienti dall'oggetto di controllo, viene chiamata questa modalità tempo reale, e la sua organizzazione è affidata ad un sistema operativo specializzato.

3. In base al numero di processori utilizzati:

  • processore singolo;
  • multiprocessore.

4. In base alla dimensione in bit del processore:

  • 8 bit;
  • 16 bit;
  • 32 bit;
  • 64 bit.

Profondità di bit del sistema operativo: determinata numero di bit utilizzati per l'indirizzamento (nella RAM, sui dischi), (in base alla capacità del processore del PC).

Il sistema operativo Windows ha 32 bit e 64 bit, le distribuzioni sono divise rispettivamente in x32 e x64, x86 è la designazione della versione a 32 bit.

Visualizza la profondità di bit nel sistema:

scorciatoia “Risorse del computer” → RMB → Proprietà → Tipo di sistema

5. Per tipo di interfaccia utente:

  • comando (testo);
  • orientato agli oggetti (grafico).

6.Per tipologia di utilizzo delle risorse hardware e software condivise:

  • rete;
  • Locale.

I sistemi operativi di rete sono progettati per risolvere efficacemente i problemi di elaborazione dei dati distribuiti. Tale trattamento non viene effettuato su un computer separato, ma su più computer collegati in rete. I sistemi operativi di rete supportano l'esecuzione distribuita di processi, la loro interazione, lo scambio di dati tra computer, l'accesso degli utenti a risorse condivise e altre funzioni che trasformano un sistema distribuito spazialmente in un sistema multiutente integrale.

Tutti i sistemi operativi di rete sono divisi in due gruppi: peer to peer Sistema operativo e sistema operativo con server dedicati.

IN peer to peer Nelle reti ogni computer può svolgere sia la funzione di server che quella di workstation. Nelle reti con server dedicati le funzioni sono definite in modo più rigoroso: le workstation non forniscono le proprie risorse ad altri computer; questo è possibile solo per i server.

Caratteristiche che determinano la scelta del sistema operativo:

  • prevalenza;
  • la presenza di un gran numero di software applicativi in ​​esecuzione sotto il suo controllo;
  • facilità di sviluppo e interazione con gli utenti;
  • facilità di transizione da una versione del sistema operativo a un'altra, più avanzata.

Esempi di sistemi operativi

  1. SM- DOS - progettato per funzionare con processori a 16 e 32 bit come 80286, 80386, 80486 (Intel), 5×86 (AMD) - « disco sistema operativo » (DOS o DOS), il termine si è sviluppato storicamente e significa solo che l'intero sistema operativo o la sua parte principale si trova su un supporto esterno (disco rigido, floppy disk o CD), da dove dovrebbe essere caricato nella RAM del computer;
  2. Windows 95/98/XP, Windows Vista, Windows 7, W Windows NT/2000, OS/2 Deformazione 4.0 — progettato per funzionare con processori di tipo Pentium a 32 e 64 bit;
  3. UNIX — utilizzato per funzionare con processori a 32 e 64 bit come: Pentium (Intel), Alpha AXP (DEC), P6 e PowerPC (IBM e Motorola), R4300i (MIPS);
  4. Sistema( Mac OS) — progettato per computer Macintosh di Apple;
  5. Linux– Clone di Unix per l'esecuzione su PC.
    Linux è una versione distribuita gratuitamente del sistema operativo Unix per le piattaforme x86, Motorola 68k, Digital Alpha, Sparc, Mips e Motorola PowerPC. Linux non utilizza alcun software di proprietà di organizzazioni commerciali. Per questo motivo è diventato piuttosto diffuso.
    La prima versione del sistema operativo Linux è stata sviluppata nel 1991 da T. Linus (Finlandia), e quindi un gran numero di persone provenienti da diverse parti del mondo hanno partecipato al suo sviluppo. Le ultime versioni sono il prodotto della creatività collettiva di un gran numero di programmatori.



Superiore