Composizione della tecnologia informatica. Caratteristiche di base dell'informatica. Storia dello sviluppo della tecnologia informatica

Il concetto di tecnologia informatica è un insieme di mezzi, metodi e tecniche tecnici e matematici utilizzati per meccanizzare e automatizzare i processi di calcolo e di elaborazione delle informazioni. La base dei mezzi tecnici dell'informatica moderna è costituita da computer elettronici (computer), dispositivi di input, output, presentazione e trasmissione (scanner, stampanti, modem, monitor, plotter, tastiere, nastri magnetici e unità disco, ecc.), laptop, microcalcolatrici, quaderni elettronici, ecc.

Un personal computer è un microcomputer desktop o portatile per utente singolo che soddisfa i requisiti di accessibilità e universalità universali.

La base di un personal computer è un microprocessore. Lo sviluppo della tecnologia e della tecnologia dei microprocessori ha determinato il cambiamento nelle generazioni di PC:

1a generazione (1975 – 1980) – basata su MP a 8 bit;

2a generazione (1981 – 1985) – basata su MP a 16 bit;

3a generazione (1986 – 1992) – basata su MP a 32 bit;

4a generazione (dal 1993) – basata su MP a 64 bit.

Oggi il mondo dei computer è sull'orlo di una rivoluzione: CPU con transistor di nuova generazione e potenti chip mobili aumenterà le prestazioni di laptop, tablet e smartphone di un ordine di grandezza.

Gli elementi di elaborazione da 10 e 12 nm cambieranno completamente il mondo dei computer nel prossimo anno: il loro spessore è 10.000 volte più piccolo di un capello umano (100.000 nm) e il loro diametro è vicino a quello degli atomi di silicio (0,3 nm).

I principali produttori di microprocessori per PC attualmente sono ancora:

Intel è un pioniere nella creazione e produzione di processori moderni. Oggi i PC più popolari sul mercato dei computer costosi sono i PC con processori basati sull'architettura multi-core. processore Intel.

Nell'aprile 2012, Intel ha introdotto la terza generazione della famiglia di processori quad-core Intel® Core™, disponibile nella potente versione sistemi desktop PC all-in-one sottili e di livello professionale, mobili e dotati dei primi chip da 22 nm al mondo che utilizzano transistor Tri-Gate 3D.

AMD (Advanced Micro Deviced) è il concorrente più reale di Intel. Fino a poco tempo fa occupava una nicchia nel mercato dei computer con processori economici ma veloci, destinati principalmente a computer e aggiornamenti economici.

Con la creazione nel 1999 dei processori Athlon, Thunderbird, Polamino, Thoroughbred, Barton e, dopo il 2003, dei processori della serie K8, ha iniziato a competere seriamente con Intel. Oggi entrambe le aziende producono un prodotto di buona qualità in grado di soddisfare le esigenze di quasi tutti gli utenti esigenti.

Attualmente, circa l'85% dei personal computer è prodotto sulla base di questi processori. A seconda del loro scopo, possono essere divisi in tre gruppi:

Domestico, destinato al consumo di massa e avente la configurazione di base più semplice;

Scopo generale, destinato alla risoluzione di problemi scientifici, tecnici, economici e di altro tipo e alla formazione. Questa classe è la più diffusa ed è servita, di regola, da utenti non professionali;

Professionista utilizzato in ambito scientifico per risolvere complessi problemi informativi e produttivi. Presentano elevate caratteristiche tecniche e vengono serviti da utenti professionali.

Inoltre, in base alla loro progettazione, i PC si dividono in:

Computer LAPTOP (computer “portatile”). In un laptop, la tastiera e l'unità di sistema sono realizzate in una custodia, che è chiusa superiormente da un coperchio con display LCD. La maggior parte dei modelli non differisce in meglio nei parametri tecnici e dispone di display monocromatici;

NOTEBOOK (“quaderni”). Gli ultimi modelli hanno parametri tecnici abbastanza elevati, paragonabili ai PC generici ( Processori core i7-3612QM, video fino a 6144 Mb, dischi rigidi – HDD oltre 600 GB o SSD fino a 256 GB;

ULTRABUK (inglese Ultrabook) è un laptop ultrasottile e leggero, con dimensioni e peso ancora più piccoli rispetto ai subnotebook convenzionali, ma allo stesso tempo con la maggior parte delle caratteristiche di un laptop a tutti gli effetti. Il termine ha iniziato a diffondersi ampiamente nel 2011, dopo che Intel Corporation ha presentato una nuova classe di PC portatili: gli ultrabook, un concetto di Intel e Apple, sviluppato sulla base di quello rilasciato nel 2008. Portatile Apple MacBookAir. Gli ultrabook sono più piccoli dei normali laptop, ma leggermente più grandi dei netbook. Sono dotati di un piccolo display a cristalli liquidi da 11 a 13,3 pollici, sono compatti: spessore fino a 20 mm e peso fino a 2 kg. A causa delle loro dimensioni ridotte, gli ultrabook hanno poche porte esterne e la maggior parte non dispone di un'unità DVD.

Un netbook è un laptop con prestazioni relativamente basse, progettato principalmente per accedere a Internet e lavorare con applicazioni per ufficio. Ha una piccola diagonale dello schermo di 7-12 pollici, un basso consumo energetico, un peso leggero e un costo relativamente basso.

Il principio di funzionamento dei moderni PC può essere descritto dal seguente algoritmo:

IO. Inizializzazione

Dopo aver acceso il computer, caricato il sistema operativo e il programma necessario, al contatore del programma viene assegnato un valore iniziale pari all'indirizzo del primo comando di questo programma.

II. Selezione della squadra

La CPU esegue l'operazione di lettura di un comando dalla memoria. Il contenuto del contatore del programma viene utilizzato come indirizzo della cella di memoria.

III. Interpreta il comando e incrementa il contatore del programma

Il contenuto della cella di memoria di lettura viene interpretato dalla CPU come un comando e inserito nel registro dei comandi. La centrale inizia ad interpretare il comando. In base al campo del codice operazione della prima parola del comando, la CU ne determina la lunghezza e, se necessario, organizza ulteriori operazioni di lettura finché l'intero comando non viene letto dalla CPU. La lunghezza del comando viene aggiunta al contenuto del contatore del programma e, una volta letto completamente il comando, nel contatore del programma viene generato l'indirizzo del comando successivo.

IV. Decifratura dei comandi ed esecuzione dei comandi

Utilizzando i campi indirizzo dell'istruzione, l'unità di controllo determina se l'istruzione ha operandi in memoria. In tal caso, in base alle modalità di indirizzamento specificate nei campi indirizzo, vengono calcolati gli indirizzi degli operandi e vengono eseguite operazioni di lettura della memoria per leggere gli operandi.

L'unità di controllo e l'ALU eseguono l'operazione specificata nel campo codice operazione dell'istruzione. Il registro dei flag del processore memorizza le caratteristiche dell'operazione.

V. Se necessario, il Titolare esegue operazione di scrittura del risultato in memoria.

Se l'ultimo comando non era "arresto processore", viene eseguita nuovamente la sequenza di operazioni descritta. Questa sequenza di operazioni si chiama ciclo del processore .

In computer specifici, l'implementazione di questo algoritmo potrebbe differire leggermente. Ma in linea di principio, il funzionamento di qualsiasi computer von Neumann è descritto da un algoritmo simile ed è una sequenza di operazioni abbastanza semplici.

Un PC comprende tre dispositivi principali: unità di sistema, tastiera e display . Per espandere la funzionalità del PC, i dispositivi periferici sono inoltre collegati: stampante, scanner, manipolatori ecc. Questi dispositivi sono collegati all'unità di sistema tramite cavi tramite connettori situati sulla parete posteriore unità di sistema o vengono inseriti direttamente nell'unità di sistema. Il PC ha una struttura modulare. Tutti i moduli sono collegati al bus di sistema.

Utilizzato per controllare dispositivi esterni controller (adattatori VU) . Dopo aver ricevuto un comando dall'MP, il controllore, operando in modo autonomo, libera l'MP dallo svolgimento di funzioni specifiche per la manutenzione del dispositivo esterno.

Va notato che l'aumento delle prestazioni dei moderni MP e dei singoli dispositivi ad esso esterni (memoria principale ed esterna, sistemi video, ecc.) ha portato al problema dell'aumento larghezza di banda bus di sistema quando si collegano questi dispositivi. Per risolvere questo problema sono stati sviluppati i bus locali, collegati direttamente al bus MP.

Il dispositivo principale in un PC è unità di sistema . È costituito da una CPU, un coprocessore, permanente e memoria ad accesso casuale, controller, unità disco magnetiche, alimentatore e altri moduli funzionali. La configurazione del PC può essere modificata collegando moduli aggiuntivi. Per garantire il funzionamento coerente dei dispositivi PC scheda madre contiene un chipset, ad es. insieme di microcircuiti (chip).

Il chipset determina le principali capacità della scheda:

· tipologie di CPU supportate;

· frequenza massima del bus di sistema;

· logica di commutazione dei dispositivi;

tipi supportati e taglia massima memoria principale;

· velocità di lavoro con ogni tipo di memoria;

· supporto per porta grafica accelerata;

· tipo di interfaccia del disco e sue modalità;

· numero massimo di slot di espansione;

· Monitoraggio tramite PC.

Il chipset di un PC moderno è solitamente costituito da due chip: un north bridge o un hub del controller di memoria (Memory Controller Hub, MCH), che serve i dispositivi centrali e contiene i controller per la memoria principale, il bus grafico, il bus di sistema e il bus di memoria, e un South Bridge, un bridge (South Bridge) o I/O Controller Hub (ICH), contenente controller per dispositivi I/O e dispositivi standard periferiche.

Schema funzionale di un computer - Secondo il suo scopo computer - Questo è un dispositivo universale per lavorare con le informazioni. Secondo i principi della sua progettazione, un computer è un modello di una persona che lavora con le informazioni.

Personal computer(PC) è un computer progettato per servire una stazione di lavoro. Le sue caratteristiche possono differire da quelle dei computer mainframe, ma è funzionalmente in grado di eseguire operazioni simili. In base al metodo di funzionamento, si distinguono i modelli di PC desktop (desktop), portatili (laptop e notebook) e tascabili (palmare).

Hardware. Poiché il computer fornisce tutte e tre le classi di metodi informativi per lavorare con i dati (hardware, software e naturali), è consuetudine parlare di un sistema informatico come costituito da hardware e software che lavorano insieme. I componenti che costituiscono l'hardware di un computer sono chiamati hardware. Eseguono tutto il lavoro fisico con i dati: registrazione, archiviazione, trasporto e trasformazione, sia nella forma che nel contenuto, e li presentano anche in una forma conveniente per l'interazione con la natura metodi di informazione persona.

La totalità dell'hardware di un computer è chiamata configurazione hardware.

Software. I programmi possono trovarsi in due stati: attivo e passivo. In uno stato passivo, il programma non funziona e assomiglia a dati, il cui contenuto è informazione. In questo stato, il contenuto del programma può essere “letto” da altri programmi, così come vengono letti e modificati i libri. Da esso puoi scoprire lo scopo del programma e come funziona. Nello stato passivo, i programmi vengono creati, modificati, archiviati e trasportati. Il processo di creazione e modifica dei programmi è chiamato programmazione.

Quando un programma è in uno stato attivo, il contenuto dei suoi dati è considerato come comandi in base ai quali opera l'hardware del computer. Per cambiare l'ordine del loro funzionamento, è sufficiente interrompere l'esecuzione di un programma e avviarne un altro, contenente un diverso insieme di comandi.

L'insieme dei programmi memorizzati su un computer lo costituisce Software. L'insieme dei programmi preparati per il funzionamento è chiamato software installato. L'insieme di programmi eseguiti in un momento o nell'altro è chiamato configurazione software.

Dispositivo informatico. Qualsiasi computer (anche quello più grande) è composto da quattro parti:

  • dispositivi di input
  • dispositivi di elaborazione delle informazioni
  • dispositivi di memoria
  • dispositivi di output delle informazioni.

Strutturalmente, queste parti possono essere combinate in un caso delle dimensioni di un libro, oppure ciascuna parte può essere costituita da più dispositivi piuttosto ingombranti

Configurazione hardware base del PC. La configurazione hardware di base di un personal computer è l'insieme minimo di hardware sufficiente per iniziare a lavorare con un computer. Nel tempo, il concetto di configurazione di base cambia gradualmente.

Molto spesso, un personal computer è costituito dai seguenti dispositivi:

  • Unità di sistema
  • Tenere sotto controllo
  • Tastiera

Inoltre è possibile collegare ad es. altri dispositivi di ingresso e uscita altoparlanti sonori, stampante, scanner...

Unità di sistema- blocco principale sistema informatico. Contiene dispositivi considerati interni. I dispositivi collegati esternamente all'unità di sistema sono considerati esterni. Il termine apparecchiatura periferica viene utilizzato anche per i dispositivi esterni.
Tenere sotto controllo- un dispositivo per la riproduzione visiva di simbolici e informazioni grafiche. Serve come dispositivo di output. Per i PC desktop, i monitor più comuni oggi sono quelli basati su tubi a raggi catodici. Assomigliano vagamente ai televisori domestici.
Tastiera- un dispositivo tastiera progettato per controllare il funzionamento di un computer e inserirvi informazioni. Le informazioni vengono immesse sotto forma di dati con caratteri alfanumerici.
Topo- dispositivo di controllo grafico.

Dispositivi interni di un personal computer.
I dispositivi situati nell'unità di sistema sono considerati interni. Alcuni di essi sono accessibili dal pannello frontale, il che è comodo per modifiche rapide mezzi di informazione, come i dischi floppy magnetici. I connettori di alcuni dispositivi si trovano sulla parete posteriore e vengono utilizzati per collegare le apparecchiature periferiche. L'accesso ad alcuni dispositivi dell'unità di sistema non è fornito: non è necessario per il normale funzionamento.

PROCESSORE. Il microprocessore è il chip principale di un personal computer. Tutti i calcoli vengono eseguiti in esso. La caratteristica principale del processore è la frequenza di clock (misurata in megahertz, MHz). Maggiore è la velocità di clock, maggiori saranno le prestazioni del processore. Quindi, ad esempio, con una frequenza di clock di 500 MHz, il processore può cambiare la sua
stato 500 milioni di volte. Per la maggior parte delle operazioni, un ciclo di clock non è sufficiente, quindi il numero di operazioni che un processore può eseguire al secondo dipende non solo dalla velocità del clock, ma anche dalla complessità delle operazioni.

L'unico dispositivo di cui il processore "conosce l'esistenza dalla nascita" è la RAM: funziona insieme ad essa. Da qui provengono i dati e i comandi. I dati vengono copiati nelle celle del processore (chiamate registri) e quindi convertiti in base al contenuto delle istruzioni. Avrai un quadro più completo di come il processore interagisce con la RAM nei capitoli sui fondamenti della programmazione.

RAM. La RAM può essere pensata come una vasta gamma di celle che memorizzano dati numerici e comandi mentre il computer è acceso. La quantità di RAM è misurata in milioni di byte - megabyte (MB).

Il processore può accedere a qualsiasi cella RAM (byte) perché ha un indirizzo numerico univoco. Il processore non può accedere ad un singolo bit di RAM poiché il bit non ha un indirizzo. Allo stesso tempo, il processore può modificare lo stato di qualsiasi bit, ma ciò richiede diverse azioni.

Scheda madre. La scheda madre è il circuito stampato più grande di un personal computer. Contiene autostrade che collegano il processore con la RAM: i cosiddetti bus. Esiste un bus dati attraverso il quale il processore copia i dati dalle celle di memoria, un bus indirizzi attraverso il quale si collega a celle di memoria specifiche e un bus comandi attraverso il quale il processore riceve comandi dai programmi. Anche tutti gli altri dispositivi interni del computer sono collegati ai bus della scheda madre. Il funzionamento della scheda madre è controllato da un chipset a microprocessore, il cosiddetto chipset.

Adattatore video. Un adattatore video è un dispositivo interno installato in uno dei connettori sulla scheda madre. I primi personal computer non avevano adattatori video. Invece, nella RAM è stata allocata una piccola area per la memorizzazione dei dati video. Uno speciale chip (controller video) legge i dati dalle celle di memoria video e controlla il monitor in base ad essi.

Con il miglioramento delle capacità grafiche dei computer, l'area della memoria video è stata separata dalla RAM principale e, insieme al controller video, è stata separata in un dispositivo separato, chiamato adattatore video. I moderni adattatori video dispongono di un proprio processore informatico (processore video), che ha ridotto il carico sul processore principale durante la costruzione di immagini complesse. Il processore video gioca un ruolo particolarmente importante quando si costruisce su uno schermo piatto. Immagini 3D. Durante tali operazioni, deve eseguire un numero particolarmente elevato di calcoli matematici.

In alcuni modelli di schede madri, le funzioni dell'adattatore video sono eseguite da chipset - in questo caso dicono che l'adattatore video è integrato con scheda madre. Se l'adattatore video è realizzato come dispositivo separato, viene chiamato scheda video. Il connettore della scheda video si trova sulla parete posteriore. Ad esso è collegato un monitor.

Adattatore audio. Per i computer PC IBM, inizialmente non era previsto il lavoro con l'audio. Per i primi dieci anni della sua esistenza, i computer di questa piattaforma erano considerati apparecchiature da ufficio e facevano a meno dei dispositivi audio. Attualmente, gli strumenti audio sono considerati standard. Per farlo scheda madre L'adattatore audio è installato. Può essere integrata nel chipset della scheda madre o implementata come scheda plug-in separata denominata scheda audio.
I connettori della scheda audio si trovano sulla parete posteriore del computer. Per riprodurre l'audio, sono collegati altoparlanti o cuffie. Un connettore separato è previsto per il collegamento di un microfono. In presenza di programma speciale ciò consente di registrare l'audio. È inoltre presente un connettore (uscita di linea) per il collegamento ad apparecchiature esterne di registrazione o riproduzione del suono (registratori, amplificatori, ecc.).

DISCO FISSO. Poiché la RAM del computer viene cancellata quando si spegne l'alimentazione, è necessario un dispositivo per archiviare dati e programmi per un lungo periodo. Attualmente per questi scopi vengono ampiamente utilizzati i cosiddetti dischi rigidi.
Principio operativo disco rigido si basa sulla registrazione dei cambiamenti nel campo magnetico vicino alla testina di registrazione.

Principale parametro difficile La capacità del disco è misurata in gigabyte (miliardi di byte), GB. La dimensione media di un disco rigido moderno è di 80-160 GB e questo parametro è in costante crescita.

Floppy drive. Per trasportare i dati tra computer remoti vengono utilizzati i cosiddetti floppy disk. Un dischetto standard (disco floppy) ha una capacità relativamente piccola di 1,44 MB. Secondo gli standard moderni, ciò è del tutto insufficiente per la maggior parte delle attività di archiviazione e trasporto dei dati, ma il basso costo dei supporti e l'elevata disponibilità hanno reso i floppy disk il supporto di archiviazione più comune.

Per scrivere e leggere i dati memorizzati su floppy disk, viene utilizzato un dispositivo speciale: un'unità disco. Il foro di ricezione dell'unità si trova sul pannello anteriore dell'unità di sistema.

Lettore CD-ROM. Per trasportare grandi quantità di dati è conveniente utilizzare i CD-ROM. Questi dischi possono solo leggere dati scritti in precedenza; non è possibile scriverli. La capacità di un disco è di circa 650-700 MB.

Le unità CD-ROM vengono utilizzate per leggere i CD. Il parametro principale di un'unità CD-ROM è la velocità di lettura. Si misura in più unità. La velocità di lettura approvata a metà degli anni '80 è considerata unica. per CD musicali (CD audio). Le moderne unità CD-ROM forniscono velocità di lettura di 40x - 52x.
Principale svantaggio Unità CD-ROM- l'impossibilità di registrare dischi - è stata superata nei moderni dispositivi write-once - CD-R. Esistono anche dispositivi CD-RW che consentono registrazioni multiple.

Il principio di memorizzazione dei dati sui CD non è magnetico, come i floppy disk, ma ottico.

Porte di comunicazione. Per comunicare con altri dispositivi, come stampante, scanner, tastiera, mouse, ecc., il computer è dotato delle cosiddette porte. Una porta non è solo un connettore per il collegamento di apparecchiature esterne, sebbene una porta termini con un connettore. Una porta è un dispositivo più complesso di un semplice connettore, dotato di propri microcircuiti e controllato da software.

Scheda di rete. Gli adattatori di rete sono necessari affinché i computer possano comunicare tra loro. Questo dispositivo garantisce che il processore non invii una nuova porzione di dati alla porta esterna finché l'adattatore di rete di un computer vicino non ha copiato su se stesso la porzione precedente. Successivamente, al processore viene segnalato che i dati sono stati raccolti e che è possibile inviarne di nuovi. Ecco come avviene il trasferimento.

Quando un adattatore di rete "impara" da un adattatore vicino che ha un dato, lo copia su se stesso e poi controlla se è indirizzato a lui. Se sì, li passa al processore. In caso contrario, li inserisce nella porta di uscita, da dove li raccoglierà l'adattatore di rete del computer vicino successivo. Ecco come i dati si spostano tra i computer finché non raggiungono il destinatario.
Gli adattatori di rete possono essere integrati nella scheda madre, ma più spesso vengono installati separatamente, sotto forma di schede aggiuntive chiamate schede di rete.

I computer elettronici vengono solitamente classificati in base ad una serie di caratteristiche, in particolare: funzionalità e la natura dei compiti da risolvere, secondo il metodo di organizzazione processo di calcolo, per caratteristiche architetturali e potenza di calcolo.

In base alla funzionalità e alla natura dei compiti da risolvere, si distinguono:

Computer universali (per uso generale);

Computer orientati ai problemi;

Computer specializzati.

Computer mainframe sono progettati per risolvere un'ampia varietà di problemi ingegneristici e tecnici, caratterizzati dalla complessità degli algoritmi e dall'ampio volume di dati elaborati.

Computer orientati ai problemi sono progettati per risolvere una gamma più ristretta di compiti legati alla registrazione, all'accumulo e all'elaborazione di piccole quantità di dati.

Computer specializzati vengono utilizzati per risolvere una gamma ristretta di problemi (microprocessori e controller che eseguono funzioni di controllo per dispositivi tecnici).

Attraverso l'organizzazione del processo informatico I computer si dividono in monoprocessore e multiprocessore, nonché sequenziali e paralleli.

Processore singolo. Il computer ha un processore centrale e tutte le operazioni di calcolo e le operazioni per il controllo dei dispositivi di input/output vengono eseguite su questo processore.

Multiprocessore. Il computer contiene diversi processori tra i quali vengono ridistribuite le funzioni di organizzazione del processo di calcolo e di gestione dei dispositivi di input/output delle informazioni.

Coerente. Funzionano in modalità programma singolo, quando il computer è progettato in modo tale da poter eseguire un solo programma e tutte le sue risorse vengono utilizzate solo nell'interesse del programma in esecuzione.

Parallelo. Funzionano in modalità multiprogramma, quando sul computer sono in esecuzione diversi programmi utente e le risorse sono condivise tra questi programmi, garantendo la loro esecuzione parallela.

In base alle caratteristiche architetturali e alla potenza di calcolo si distinguono:



Consideriamo lo schema per classificare i computer secondo questo criterio (Fig. 1).

Fig. 1. Classificazione dei computer in base alle caratteristiche architetturali

e potenza di calcolo.

Supercomputer- Queste sono le macchine informatiche più potenti in termini di velocità e prestazioni. I supercomputer includono “Cray” e “IBM SP2” (USA). Vengono utilizzati per risolvere problemi informatici e di modellazione su larga scala, per calcoli complessi in aerodinamica, meteorologia, fisica delle alte energie e vengono utilizzati anche nel settore finanziario.

Grandi macchine o mainframe. I mainframe vengono utilizzati nel settore finanziario, nel complesso della difesa e vengono utilizzati per il personale dei centri di calcolo dipartimentali, territoriali e regionali.

Computer medi ampiamente utilizzato per controllare complessi processi tecnologici di produzione.

Minicomputer progettati per essere utilizzati come sistemi informatici di controllo e server di rete.

Microcomputer- Si tratta di computer che utilizzano un microprocessore come unità di elaborazione centrale. Questi includono microcomputer integrati (integrati in varie apparecchiature, apparecchiature o dispositivi) e personal computer (PC).

Computer personale. Si è sviluppato rapidamente negli ultimi 20 anni. Un personal computer (PC) è progettato per servire una singola postazione di lavoro e può soddisfare le esigenze di piccole imprese e privati. Con l'avvento di Internet, la popolarità dei PC è aumentata in modo significativo, poiché utilizzando un personal computer è possibile utilizzare informazioni scientifiche, di consultazione, educative e di intrattenimento.

I personal computer includono PC desktop e portatili. I computer portatili includono Notebook (blocco note o Taccuino) e personal computer tascabili (Personal Computer Palmari - PC Palmari, Personal Digital Assistant - PDA e Palmtop).

Computer integrati. Computer utilizzati in vari dispositivi, sistemi e complessi per implementare funzioni specifiche. Ad esempio, la diagnostica dell'auto.

Dal 1999 per classificare i PC viene utilizzato uno standard di certificazione internazionale, la specifica PC99. Secondo questa specifica, i PC sono suddivisi nei seguenti gruppi:

· PC di massa (PC Consumatori);

· PC aziendali (PC Office);

· PC portatili (Mobile PC);

· postazioni di lavoro (WorkStation);

· PC per l'intrattenimento (Entertaiment PC).

La maggior parte dei PC lo sono massiccio e includere un set di hardware standard (minimo richiesto). Questo set comprende: unità di sistema, display, tastiera, mouse. Se necessario, questo set può essere facilmente integrato con altri dispositivi su richiesta dell'utente, ad esempio una stampante.

PC aziendali includere un minimo di strumenti grafici e di riproduzione del suono.

PC portatili differiscono in presenza di mezzi di comunicazione di accesso remoto.

Postazioni di lavoro soddisfare i maggiori requisiti di capacità di memoria dei dispositivi di archiviazione dati.

PC per l'intrattenimento focalizzato sulla grafica di alta qualità e sulla riproduzione del suono.

Di caratteristiche del progetto I PC si dividono in:

· stazionario (desktop, Desktop);

portatile:

· portatile (Laptop);

· i Quaderni;

· tasca (Palmare).

Per studiare in modo efficace la tecnologia informatica applicata, è estremamente importante avere una chiara comprensione dell'hardware e del software del computer. Si chiama la composizione della tecnologia informatica configurazione . Hardware e Software La tecnologia informatica viene solitamente considerata separatamente. Di conseguenza, considerano separatamente configurazione hardware e loro Software configurazione Questo principio di separazione è di particolare importanza per l'informatica, poiché molto spesso la soluzione agli stessi problemi può essere fornita sia dall'hardware che dal software. I criteri per scegliere una soluzione hardware o software sono prestazioni ed efficienza. Ad esempio, digita il testo in un editor di testo o utilizza uno scanner.

Configurazione hardware di base di un personal computer

Personal computer – universale sistema tecnico. Il suo configurazione (composizione dell'attrezzatura) può essere modificata in modo flessibile secondo necessità. Tuttavia, esiste un concetto configurazione di base , che è considerato tipico, vale a dire set minimo di attrezzatura. Il computer viene solitamente fornito con questo kit. Il concetto di configurazione di base può variare. Attualmente considerato nella configurazione base seguenti dispositivi(Fig. 2.1.):


Diamo un'occhiata alle sue parti.

Al principale mezzi tecnici personal computer includono:

- unità di sistema;

- monitor (visualizzazione);

- tastiera.

Inoltre, puoi connetterti al tuo computer, ad esempio:

- Stampante;

- topo;

-scanner;

- modem (modulatore-demodulatore);

- plotter;

- joystick, ecc.

Unità di sistema

L'unità di sistema è l'unità principale all'interno della quale sono installati i componenti più importanti. Unità di sistema (vedi Fig. 2.2., 2.3.) è un caso in cui si trova quasi tutto l’hardware del computer.

Vengono chiamati i dispositivi situati all'interno dell'unità di sistema interno, e vengono chiamati i dispositivi ad esso collegati esternamente esterno. Esterno dispositivi aggiuntivi, chiamato anche periferica.

Organizzazione interna unità di sistema:

· scheda madre;

· DISCO FISSO:

· lettore floppy disk;

· Lettore CD-ROM;

· scheda video (adattatore video);

· scheda audio;

· alimentatore.

Sistemi situati su scheda madre:

· RAM;

· processore;

· Chip ROM e sistema BIOS;

· interfacce bus, ecc.

I dischi magnetici, a differenza della RAM, sono progettati per l'archiviazione permanente delle informazioni.

Esistono due tipi di dischi magnetici utilizzati nei PC:


· disco rigido non rimovibile (disco rigido);

· dischi rimovibili e flessibili (floppy disk).

Il disco rigido è progettato per la memorizzazione permanente di informazioni che vengono utilizzate più o meno spesso nel lavoro: programmi del sistema operativo, compilatori di linguaggi di programmazione, programmi di servizio (manutenzione), programmi applicativi utente, documenti di testo, file di database, ecc. Il disco rigido è significativamente superiore ai floppy disk in termini di velocità di accesso, capacità e affidabilità.

3. Tecnologia informatica 1

3.1 Storia dello sviluppo della tecnologia informatica 1

3.2 Metodi per classificare i computer 3

3.3 Altri tipi di classificazione informatica 5

3.4 Composizione del sistema informatico 7

3.4.1 Hardware 7

3.4.2Software7

3.5 Classificazione del software applicativo 9

3.6 Classificazione del software di utilità 12

3.7 Il concetto di informazione e supporto matematico per i sistemi informatici 13

3.8 Riassumendo 13

  1. Ingegneria Informatica

    1. Storia dello sviluppo della tecnologia informatica

Sistema informatico, computer

Trovare mezzi e metodi per la meccanizzazione e l'automazione del lavoro è uno dei compiti principali delle discipline tecniche. L'automazione del lavoro con i dati ha le sue caratteristiche e differenze rispetto all'automazione di altri tipi di lavoro. Per questa classe di compiti vengono utilizzati tipi speciali di dispositivi, la maggior parte dei quali sono dispositivi elettronici. Viene chiamato un insieme di dispositivi progettati per l'elaborazione automatica o automatizzata dei dati informatica, Viene chiamato un insieme specifico di dispositivi e programmi interagenti progettati per servire un'area di lavoro sistema informatico. Il dispositivo centrale della maggior parte dei sistemi informatici è computer.

Un computer è un dispositivo elettronico progettato per automatizzare la creazione, l'archiviazione, l'elaborazione e il trasporto dei dati.

Come funziona il computer

Nel definire un computer come dispositivo, abbiamo indicato la caratteristica distintiva: elettronico. Tuttavia, i calcoli automatici non venivano sempre eseguiti da dispositivi elettronici. Sono anche noti dispositivi meccanici in grado di eseguire calcoli in modo automatico.

Analizzando storia antica tecnologia informatica, alcuni ricercatori stranieri spesso chiamano un dispositivo di calcolo meccanico come l'antico predecessore del computer abaco. L'approccio “dall'abaco” indica un profondo malinteso metodologico, poiché l'abaco non ha la proprietà di eseguire automaticamente i calcoli, ma per un computer è decisivo.

L'abaco è il più antico strumento di conteggio meccanico, originariamente una lastra di argilla con scanalature in cui venivano collocate le pietre rappresentanti i numeri. La comparsa dell'abaco risale al IV millennio a.C. e. Il luogo di origine è considerato l'Asia. Nel Medioevo in Europa, l'abaco fu sostituito da tavole graficate. Furono chiamati i calcoli che li utilizzavano contare sulle linee e in Russia nei secoli XVI-XVII apparve un'invenzione molto più avanzata, utilizzata ancora oggi - Abaco russo.

Allo stesso tempo, conosciamo molto bene un altro dispositivo in grado di eseguire automaticamente calcoli: un orologio. Indipendentemente dal principio di funzionamento, tutti i tipi di orologi (orologio da sabbia, orologio ad acqua, meccanico, elettrico, elettronico, ecc.) hanno la capacità di generare movimenti o segnali a intervalli regolari e di registrare i cambiamenti risultanti, ovvero di eseguire la somma automatica dei segnali o movimenti. Questo principio può essere visto anche nelle meridiane contenenti solo un dispositivo di registrazione (il ruolo di generatore è svolto dal sistema Terra-Sole).

Un orologio meccanico è un dispositivo costituito da un dispositivo che esegue automaticamente i movimenti a intervalli regolari specificati e da un dispositivo per la registrazione di tali movimenti. Il luogo in cui apparvero i primi orologi meccanici è sconosciuto. I primi esempi risalgono al XIV secolo e appartengono a monasteri (orologio da torre).

Nel cuore di ogni computer moderno, come in orologio elettronico, bugie generatore di orologi, generazione di segnali elettrici a intervalli regolari utilizzati per pilotare tutti i dispositivi in ​​un sistema informatico. Il controllo di un computer in realtà si riduce alla gestione della distribuzione dei segnali tra i dispositivi. Tale controllo può essere effettuato in modo automatico (in questo caso si parla di controllo del programma) o manualmente utilizzando controlli esterni: pulsanti, interruttori, ponticelli, ecc. (nei primi modelli). Nei computer moderni, il controllo esterno è in gran parte automatizzato utilizzando speciali interfacce logiche hardware a cui sono collegati i dispositivi di controllo e di input dati (tastiera, mouse, joystick e altri). A differenza del controllo del programma, tale controllo viene chiamato interattivo.

Fonti meccaniche

Il primo dispositivo automatico al mondo per eseguire l'operazione di addizione è stato creato sulla base di un orologio meccanico. Nel 1623 fu sviluppato da Wilhelm Schickard, professore presso il Dipartimento di Lingue Orientali dell'Università di Tubinga (Germania). Oggi dai disegni è stato riprodotto un modello funzionante del dispositivo che ne ha confermato la funzionalità. Lo stesso inventore nelle sue lettere chiamava la macchina un “orologio sommatore”.

Nel 1642, il meccanico francese Blaise Pascal (1623-1662) sviluppò un dispositivo di addizione più compatto, che divenne il primo calcolatore meccanico prodotto in serie al mondo (principalmente per le esigenze degli usurai e dei cambiavalute parigini). Nel 1673, il matematico e filosofo tedesco G. W. Leibniz (1646-1717) creò una calcolatrice meccanica in grado di eseguire operazioni di moltiplicazione e divisione ripetendo più e più volte operazioni di addizione e sottrazione.

Durante il XVIII secolo, conosciuto come l'Illuminismo, apparvero modelli nuovi e più avanzati, ma il principio del controllo meccanico delle operazioni informatiche rimase lo stesso. L'idea di programmare le operazioni di calcolo è venuta dalla stessa industria orologiera. L'antico orologio da torre del monastero era regolato per attivare un meccanismo collegato ad un sistema di campane ad una determinata ora. Tale programmazione era difficile - la stessa operazione è stata eseguita nello stesso momento.

L'idea di una programmazione flessibile di dispositivi meccanici mediante nastro di carta perforata venne realizzata per la prima volta nel 1804 nel telaio Jacquard, dopo di che mancava solo un passo controllo del programma operazioni computazionali.

Questo passo è stato compiuto dall'eccezionale matematico e inventore inglese Charles Babbage (1792-1871) nella sua macchina analitica, che, sfortunatamente, non è mai stata completamente costruita dall'inventore durante la sua vita, ma è stata riprodotta ai nostri giorni secondo i suoi disegni, quindi che oggi abbiamo il diritto di parlare della Macchina Analitica come di un dispositivo realmente esistente. Una caratteristica speciale dell'Analytical Engine è che è stato il primo ad essere implementato il principio di dividere le informazioni in comandi e dati. Il motore analitico conteneva due grandi unità: un "magazzino" e un "mulino". I dati venivano inseriti nella memoria meccanica del "magazzino" installando blocchi di ingranaggi, e poi elaborati nel "mulino" utilizzando comandi immessi da schede perforate (come in un telaio Jacquard).

I ricercatori del lavoro di Charles Babbage notano certamente il ruolo speciale della contessa Augusta Ada Lovelace (1815-1852), figlia del famoso poeta Lord Byron, nello sviluppo del progetto della macchina analitica. Fu lei ad avere l'idea di utilizzare schede perforate per programmare operazioni di calcolo (1843). In particolare, in una delle sue lettere scrive: “La macchina analitica tesse schemi algebrici allo stesso modo in cui un telaio riproduce fiori e foglie”. Lady Ada può essere giustamente definita la prima programmatrice al mondo. Oggi uno dei famosi linguaggi di programmazione porta il suo nome.

L'idea di considerazione separata di Charles Babbage squadre E dati si è rivelato insolitamente fruttuoso. Nel 20 ° secolo è stato sviluppato nei principi di John von Neumann (1941), e oggi nel calcolo del principio di considerazione separata programmi E datiè molto importante. Viene preso in considerazione sia nello sviluppo delle architetture dei computer moderni sia nello sviluppo di programmi per computer.

Fonti matematiche

Se pensiamo a quali oggetti lavoravano i primi predecessori meccanici del moderno computer elettronico, dobbiamo ammettere che i numeri erano rappresentati sotto forma di movimenti lineari di meccanismi a catena e a cremagliera, o sotto forma di movimenti angolari di meccanismi a ingranaggi e leve . In entrambi i casi si trattava di movimenti, che non potevano non influenzare le dimensioni dei dispositivi e la velocità del loro funzionamento. Solo il passaggio dalla registrazione dei movimenti alla registrazione dei segnali ha permesso di ridurre notevolmente le dimensioni e aumentare le prestazioni. Tuttavia, per raggiungere questo risultato è stato necessario introdurre molti principi e concetti più importanti.

Sistema binario Leibniz. Nei dispositivi meccanici, gli ingranaggi possono avere numerosi ingranaggi fissi e, soprattutto, diverso tra costituiscono disposizioni. Il numero di tali posizioni è almeno uguale al numero di denti dell'ingranaggio. Nel settore elettrico e dispositivi elettronici stiamo parlando non sulla registrazione disposizioni elementi strutturali e sulla registrazione stati elementi del dispositivo. Così stabile e distinguibile Ci sono solo due stati: acceso - spento; aperto chiuso; caricato - scaricato, ecc. Pertanto, il sistema decimale tradizionale utilizzato nelle calcolatrici meccaniche è scomodo per i dispositivi informatici elettronici.

La possibilità di rappresentare qualsiasi numero (e non solo numeri) con cifre binarie fu proposta per la prima volta da Gottfried Wilhelm Leibniz nel 1666. Giunse al sistema di numeri binari mentre ricercava il concetto filosofico di unità e la lotta degli opposti. Un tentativo di immaginare l'universo sotto forma di una continua interazione di due principi (“nero” e “bianco”, maschio e femmina, bene e male) e di applicare i metodi della matematica “pura” al suo studio spinse Leibniz a studiare le proprietà della rappresentazione binaria dei dati. Va detto che Leibniz aveva già pensato alla possibilità di utilizzare un sistema binario in un dispositivo informatico, ma poiché non ce n'era bisogno per i dispositivi meccanici, non utilizzò i principi del sistema binario nella sua calcolatrice (1673) .

Logica matematica di George Boole, Parlando del lavoro di George Boole, i ricercatori di storia della tecnologia informatica sottolineano sicuramente che questo eccezionale scienziato inglese della prima metà del XIX secolo era un autodidatta. Forse fu proprio a causa della mancanza di un’educazione “classica” (come intesa a quel tempo) che George Boole introdusse cambiamenti rivoluzionari nella logica come scienza.

Studiando le leggi del pensiero, applicò un sistema di notazione formale e regole logiche vicino a quello matematico. Successivamente questo sistema chiamata algebra logica O Algebra booleana. Le regole di questo sistema sono applicabili a un'ampia varietà di oggetti e ai loro gruppi (imposta, secondo la terminologia dell'autore). Lo scopo principale del sistema, come concepito da J. Boole, era codificare affermazioni logiche e ridurre le strutture delle conclusioni logiche a semplici espressioni vicine nella forma alle formule matematiche. Il risultato di una valutazione formale di un'espressione logica è uno dei due valori logici: VERO O menzogna.

L'importanza dell'algebra logica fu ignorata per molto tempo, poiché le sue tecniche e i suoi metodi non contenevano benefici pratici per la scienza e la tecnologia di quel tempo. Tuttavia, quando si è presentata la possibilità fondamentale di creare tecnologia informatica su base elettronica, le operazioni introdotte da Boole si sono rivelate molto utili. Inizialmente si concentrano sul lavorare con solo due entità: VERO E menzogna. Non è difficile capire come fossero utili per lavorare con il codice binario, che anche nei computer moderni è rappresentato da due soli segnali: zero E unità.

Non tutto il sistema di George Boole (né tutte le operazioni logiche da lui proposte) furono utilizzate per creare computer elettronici, ma quattro operazioni principali: (intersezione), O (Unione), NON (appello) e OR ESCLUSIVO: costituiscono la base del funzionamento di tutti i tipi di processori nei computer moderni.

Riso. 3.1. Operazioni fondamentali di algebra logica


Classificazione delle apparecchiature informatiche

1. Ferramenta

La composizione di un sistema informatico è chiamata configurazione. L'hardware e il software del computer vengono generalmente considerati separatamente. Di conseguenza, la configurazione hardware dei sistemi informatici e la loro configurazione software vengono considerate separatamente. Questo principio di separazione è di particolare importanza per l'informatica, poiché molto spesso la soluzione agli stessi problemi può essere fornita sia dall'hardware che dal software. I criteri per scegliere una soluzione hardware o software sono prestazioni ed efficienza. È generalmente accettato che le soluzioni hardware siano mediamente più costose, ma l'implementazione soluzioni software richiede personale più altamente qualificato.

A hardware i sistemi informatici includono dispositivi e strumenti che formano una configurazione hardware. Computer moderni e i sistemi informatici hanno un design modulare a blocchi: la configurazione hardware necessaria per l'esecuzione tipi specifici lavoro, che può essere assemblato da unità e blocchi già pronti.

I principali componenti hardware di un sistema informatico sono: memoria, processore centrale e dispositivi periferici, che sono interconnessi da un bus di sistema (Fig. 1). La memoria principale è progettata per archiviare programmi e dati in forma binaria ed è organizzata nella forma di una serie ordinata di celle, ciascuna delle quali ha un indirizzo digitale univoco. In genere, la dimensione della cella è 1 byte. Operazioni tipiche sulla memoria principale: leggere e scrivere il contenuto di una cella con un indirizzo specifico.

2. Processore centrale

L'unità di elaborazione centrale è l'unità centrale di un computer che esegue operazioni di elaborazione dei dati e controlla i dispositivi periferici del computer. Il processore centrale comprende:

Dispositivo di controllo: organizza il processo di esecuzione del programma e coordina l'interazione di tutti i dispositivi del sistema informatico durante il suo funzionamento;

Unità aritmetico-logica: esegue operazioni aritmetiche e logiche sui dati: addizione, sottrazione, moltiplicazione, divisione, confronto, ecc.;

Dispositivo di archiviazione - lo è memoria interna processore, che consiste in registri, quando utilizzato, il processore esegue calcoli e memorizza i risultati intermedi; Per accelerare il lavoro con la RAM, viene utilizzata la memoria cache, nella quale vengono pompati comandi e dati dalla RAM necessari al processore per le operazioni successive;

Generatore di orologi: genera impulsi elettrici che sincronizzano il funzionamento di tutti i nodi del computer.

Il processore centrale esegue varie operazioni con i dati utilizzando celle specializzate per la memorizzazione di variabili chiave e risultati temporanei - registri interni. I registri si dividono in due tipologie (Fig. 2.):

Registri per scopi generali: utilizzati per l'archiviazione temporanea di variabili locali chiave e risultati intermedi dei calcoli, includono registri di dati e registri di puntatori; la funzione principale è fornire accesso veloce ai dati utilizzati di frequente (di solito senza accesso alla memoria).

Registri specializzati - utilizzati per controllare il funzionamento del processore, i più importanti sono: il registro delle istruzioni, lo stack pointer, il registro dei flag e il registro contenente informazioni sullo stato del programma.

Il programmatore può utilizzare i registri dati a sua discrezione per memorizzare temporaneamente eventuali oggetti (dati o indirizzi) ed eseguire su di essi le operazioni richieste. I registri indice, come i registri dati, possono essere utilizzati in qualsiasi modo; il loro scopo principale è memorizzare indici o offset di dati e istruzioni dall'inizio dell'indirizzo di base (quando si recuperano operandi dalla memoria). L'indirizzo di base può trovarsi nei registri di base.

I registri di segmento sono un elemento critico dell'architettura del processore, poiché forniscono l'indirizzamento di uno spazio di indirizzi a 20 bit utilizzando operandi a 16 bit. Registri dei segmenti principali: CS - registro dei segmenti di codice; DS - registro del segmento dati; SS è il registro del segmento dello stack, ES è il registro del segmento aggiuntivo. Si accede alla memoria attraverso segmenti: formazioni logiche sovrapposte a qualsiasi porzione dello spazio degli indirizzi fisici. L'indirizzo iniziale del segmento, diviso per 16 (senza la cifra esadecimale meno significativa) viene inserito in uno dei registri del segmento; dopodiché viene fornito l'accesso alla sezione di memoria a partire dall'indirizzo del segmento specificato.

L'indirizzo di qualsiasi cella di memoria è costituito da due parole, una delle quali determina la posizione nella memoria del segmento corrispondente e l'altra l'offset all'interno di questo segmento. La dimensione di un segmento è determinata dalla quantità di dati che contiene, ma non può mai superare i 64 KB, che è determinata dal valore di offset massimo possibile. L'indirizzo del segmento dell'istruzione è memorizzato nel registro CS e l'offset del byte indirizzato è memorizzato nel registro del puntatore dell'istruzione IP.

Fig.2. Registri del processore a 32 bit

Dopo aver caricato il programma, l'offset del primo comando del programma viene inserito nell'IP. Il processore, dopo averlo letto dalla memoria, aumenta il contenuto di IP esattamente della lunghezza di questa istruzione (le istruzioni del processore Intel possono avere una lunghezza da 1 a 6 byte), in conseguenza della quale IP punta alla seconda istruzione del programma . Dopo aver eseguito il primo comando, il processore legge il secondo dalla memoria, aumentando nuovamente il valore IP. Di conseguenza, l'IP contiene sempre l'offset del comando successivo, il comando successivo a quello in esecuzione. L'algoritmo descritto viene violato solo durante l'esecuzione di istruzioni di salto, chiamate di subroutine e gestione degli interrupt.

L'indirizzo del segmento dati è memorizzato nel registro DS, l'offset può trovarsi in uno dei registri di uso generale. Il registro di segmento aggiuntivo ES viene utilizzato per accedere a campi dati non inclusi nel programma, come il buffer video o le celle di sistema. Tuttavia, se necessario, può essere configurato per uno dei segmenti del programma. Ad esempio, se un programma funziona con una grande quantità di dati, è possibile fornire due segmenti e accedere a uno di essi tramite il registro DS e all'altro tramite il registro ES.

Il registro puntatore dello stack SP viene utilizzato come puntatore alla cima dello stack. Uno stack è un'area di programma per la memorizzazione temporanea di dati arbitrari. La comodità dello stack sta nel fatto che la sua area viene utilizzata ripetutamente e la memorizzazione dei dati sullo stack e il loro recupero da lì vengono eseguiti utilizzando i comandi push e pop senza specificare i nomi. Lo stack viene tradizionalmente utilizzato per memorizzare il contenuto dei registri utilizzati da un programma prima di chiamare una subroutine, che a sua volta utilizzerà i registri del processore per i propri scopi. Il contenuto originale dei registri viene estratto dallo stack dopo il ritorno della subroutine. Un'altra tecnica comune consiste nel passare i parametri richiesti a una subroutine tramite lo stack. La subroutine, sapendo in quale ordine i parametri sono messi nello stack, può prenderli da lì e utilizzarli durante la sua esecuzione.

Una caratteristica distintiva dello stack è l'ordine unico in cui i dati in esso contenuti vengono recuperati: in ogni momento, sullo stack è disponibile solo l'elemento in cima, cioè l'ultimo elemento che è stato caricato nello stack. Estraendo l'elemento in cima dallo stack si rende disponibile l'elemento successivo. Gli elementi dello stack si trovano nell'area di memoria assegnata allo stack, a partire dal fondo dello stack (al suo indirizzo massimo) fino agli indirizzi decrescenti. L'indirizzo dell'elemento superiore e accessibile è memorizzato nel registro SP del puntatore dello stack.

I registri speciali sono disponibili solo in modalità privilegiata e vengono utilizzati dal sistema operativo. Controllano vari blocchi di cache, memoria principale, dispositivi di input/output e altri dispositivi nel sistema informatico.

Esiste un registro accessibile sia in modalità privilegiata che utente. Questo è il registro PSW (Program State Word), chiamato registro flag. Il registro flag contiene vari bit necessari al processore centrale, i più importanti sono i codici di condizione utilizzati nei confronti e nei salti condizionali, vengono impostati in ogni ciclo dell'unità aritmetico-logica del processore e riflettono lo stato del risultato del ciclo precedente operazione. Il contenuto del registro flag dipende dal tipo di sistema informatico e può includere campi aggiuntivi che indicano: la modalità della macchina (ad esempio utente o privilegiato); bit di traccia (utilizzato per il debug); livello di priorità del processore; stato di abilitazione dell'interruzione. Il registro flag viene solitamente letto in modalità utente, ma alcuni campi possono essere scritti solo in modalità privilegiata (ad esempio, il bit che indica la modalità).

Il registro del puntatore al comando contiene l'indirizzo del comando successivo nella coda per l'esecuzione. Dopo aver selezionato un'istruzione dalla memoria, il registro delle istruzioni viene modificato e il puntatore si sposta sull'istruzione successiva. Il puntatore dell'istruzione monitora l'avanzamento dell'esecuzione del programma, indicando in ogni momento l'indirizzo relativo dell'istruzione successiva a quella in esecuzione. Il registro non è accessibile a livello di codice; L'incremento dell'indirizzo in esso contenuto viene eseguito dal microprocessore, tenendo conto della lunghezza dell'istruzione corrente. I comandi per salti, interruzioni, chiamata di subroutine e ritorno da esse modificano il contenuto del puntatore, effettuando così transizioni ai punti richiesti nel programma.

Il registro dell'accumulatore viene utilizzato nella stragrande maggioranza delle istruzioni. I comandi utilizzati di frequente che utilizzano questo registro hanno un formato abbreviato.

Per elaborare le informazioni, i dati vengono solitamente trasferiti dalle celle di memoria a registri di uso generale, eseguendo un'operazione processore centrale e trasferendo i risultati nella memoria principale. I programmi vengono memorizzati come una sequenza di istruzioni macchina che devono essere eseguite dal processore centrale. Ogni comando è costituito da un campo operativo e da campi operando, ovvero i dati su cui viene eseguita l'operazione. Un insieme di istruzioni macchina è chiamato linguaggio macchina. I programmi vengono eseguiti come segue. L'istruzione macchina puntata dal contatore del programma viene letta dalla memoria e copiata nel registro delle istruzioni, dove viene decodificata e quindi eseguita. Dopo la sua esecuzione, il contatore del programma punta al comando successivo, ecc. Queste azioni sono chiamate ciclo macchina.

La maggior parte dei processori centrali ha due modalità operative: modalità kernel e modalità utente, che è specificata da un bit nella parola di stato del processore (registro flag). Se il processore funziona in modalità kernel, può eseguire tutte le istruzioni nel set di istruzioni e utilizzare tutte le funzionalità dell'hardware. Il sistema operativo funziona in modalità kernel e fornisce l'accesso a tutto l'hardware. I programmi utente vengono eseguiti in modalità utente, che consente l'esecuzione di molti comandi ma rende disponibile solo una parte dell'hardware.

Per comunicare con il sistema operativo, un programma utente deve emettere una chiamata di sistema che entra in modalità kernel e attiva le funzioni del sistema operativo. Il comando trap (interrupt emulato) cambia la modalità operativa del processore da modalità utente a modalità kernel e trasferisce il controllo al sistema operativo. Al termine del lavoro, il controllo ritorna al programma utente, al comando successivo alla chiamata di sistema.

Nei computer, oltre alle istruzioni per l'esecuzione delle chiamate di sistema, ci sono degli interrupt chiamati dall'hardware per avvisare di situazioni eccezionali, come un tentativo di divisione per zero o un overflow in virgola mobile. In tutti questi casi, il controllo passa al sistema operativo, che deve decidere cosa fare dopo. A volte è necessario terminare il programma con un messaggio di errore, a volte è possibile ignorarlo (ad esempio, se un numero perde significato, può essere impostato a zero) o trasferire il controllo al programma stesso per gestire determinati tipi di condizioni.

In base alla disposizione dei dispositivi rispetto al processore centrale, si distinguono i dispositivi interni ed esterni. Esterni, di norma, sono la maggior parte dei dispositivi di input/output (chiamati anche dispositivi periferici) e alcuni dispositivi progettati per l'archiviazione di dati a lungo termine.

Il coordinamento tra singoli nodi e blocchi viene eseguito utilizzando dispositivi logici hardware di transizione chiamati interfacce hardware. Gli standard per le interfacce hardware nell'informatica sono chiamati protocolli, un insieme di condizioni tecniche che devono essere fornite dagli sviluppatori di dispositivi per coordinare con successo il loro funzionamento con altri dispositivi.

Numerose interfacce presenti nell'architettura di qualsiasi sistema informatico possono essere divise in due grandi gruppi: seriali e parallele. Attraverso l'interfaccia seriale, i dati vengono trasmessi in sequenza, bit per bit, e attraverso l'interfaccia parallela, simultaneamente in gruppi di bit. Il numero di bit coinvolti in un messaggio è determinato dalla larghezza dell'interfaccia; ad esempio, le interfacce parallele a otto bit trasmettono un byte (8 bit) per ciclo.

Le interfacce parallele sono generalmente più complesse delle interfacce seriali, ma forniscono prestazioni più elevate. Vengono utilizzati laddove la velocità di trasferimento dei dati è importante: per collegare dispositivi di stampa, dispositivi di input grafico, dispositivi per la registrazione di dati su supporti esterni, ecc. Le prestazioni delle interfacce parallele vengono misurate in byte al secondo (byte/s; KB/s; MB/s).

Dispositivo interfacce seriali Più facile; di norma, non hanno bisogno di sincronizzare il funzionamento dei dispositivi trasmittenti e riceventi (per questo vengono spesso chiamate interfacce asincrone), ma il loro rendimento è inferiore e il coefficiente azione utile sotto. Poiché lo scambio di dati attraverso i dispositivi seriali non viene effettuato in byte, ma in bit, la loro prestazione viene misurata in bit al secondo (bps, Kbps, Mbps). Nonostante l'apparente semplicità di conversione delle unità di velocità di trasmissione seriale in unità di velocità di trasferimento dati parallelo mediante divisione meccanica per 8, tale conversione non viene eseguita perché non è corretta a causa della presenza di dati di servizio. Come ultima risorsa, adattata ai dati di servizio, a volte la velocità dei dispositivi seriali è espressa in caratteri al secondo o in caratteri al secondo (s/s), ma questo valore non è di natura tecnica, ma di riferimento, di consumo.

Le interfacce seriali vengono utilizzate per collegare dispositivi lenti (i più semplici dispositivi di stampa di bassa qualità: dispositivi per l'input e l'output di informazioni su caratteri e segnali, sensori di controllo, dispositivi di comunicazione a basse prestazioni, ecc.), nonché nei casi in cui non sono presenti restrizioni significative sulla durata dello scambio di dati (fotocamere digitali).

Il secondo componente principale di un computer è la memoria. Il sistema di memoria è costruito sotto forma di una gerarchia di strati (Fig. 3.). Lo strato superiore è costituito dai registri interni del processore centrale. I registri interni forniscono una capacità di archiviazione di 32 x 32 bit su un processore a 32 bit e di 64 x 64 bit su un processore a 64 bit, che in entrambi i casi è inferiore a un kilobyte. I programmi stessi possono gestire i registri (cioè decidere cosa memorizzarvi) senza intervento dell'hardware.

Fig.3. Tipico struttura gerarchica memoria

Il livello successivo contiene la memoria cache, controllata principalmente dall'hardware. La RAM è divisa in linee di cache, solitamente 64 byte, con indirizzi da 0 a 63 nella riga zero, da 64 a 127 nella riga uno, ecc. Le linee cache utilizzate più frequentemente vengono archiviate nella memoria cache ad alta velocità situata all'interno o molto vicino alla CPU. Quando un programma deve leggere una parola dalla memoria, il chip della cache controlla se la riga desiderata è nella cache. In tal caso si verifica un accesso effettivo alla memoria cache, la richiesta viene soddisfatta interamente dalla cache e la richiesta di memoria non viene inviata al bus. Un accesso riuscito alla cache richiede solitamente circa due cicli di clock, mentre uno non riuscito comporta un accesso alla memoria con una significativa perdita di tempo. La memoria cache ha dimensioni limitate a causa del suo costo elevato. Alcune macchine hanno due o anche tre livelli di cache, ognuno dei quali è più lento e più grande del precedente.

Poi arriva la RAM (RAM - memoria ad accesso casuale, RAM inglese, Random Access Memory - memoria ad accesso casuale). Questa è l'area di lavoro principale del dispositivo di archiviazione del sistema informatico. Tutte le richieste della CPU che non possono essere soddisfatte dalla memoria cache vengono inviate alla memoria principale per l'elaborazione. Quando si eseguono più programmi su un computer, è consigliabile posizionare i programmi complessi nella RAM. La protezione reciproca dei programmi e il loro spostamento in memoria si realizza dotando il computer di due registri specializzati: il registro base e il registro limite.

Nel caso più semplice (Fig. 4.a), quando il programma inizia a funzionare, il registro di base viene caricato con l'indirizzo dell'inizio del modulo del programma eseguibile e il registro limite indica quanto occupa il modulo del programma eseguibile insieme a i dati. Quando recupera un comando dalla memoria, l'hardware controlla il contatore del programma e, se è inferiore al registro limite, vi aggiunge il valore del registro base e trasferisce la somma in memoria. Quando un programma vuole leggere una parola di dati (ad esempio, dall'indirizzo 10000), l'hardware aggiunge automaticamente il contenuto del registro di base (ad esempio, 50000) a quell'indirizzo e trasferisce la somma (60000) in memoria. Il registro di base consente a un programma di fare riferimento a qualsiasi parte della memoria seguendo l'indirizzo in esso memorizzato. Inoltre, il registro limite impedisce al programma di accedere a qualsiasi parte della memoria dopo il programma. Pertanto, con l'aiuto di questo schema, vengono risolti entrambi i problemi: protezione e circolazione dei programmi.

Come risultato della verifica e della trasformazione dei dati, l'indirizzo generato dal programma e chiamato indirizzo virtuale viene tradotto in un indirizzo utilizzato dalla memoria e chiamato indirizzo fisico. Il dispositivo che esegue il controllo e la conversione è chiamato unità di gestione della memoria o gestore della memoria (MMU, Memory Management Unit). Il gestore della memoria si trova nel circuito del processore o vicino ad esso, ma è logicamente posizionato tra il processore e la memoria.

Un gestore di memoria più complesso è costituito da due coppie di registri base e limite. Una coppia è per il testo del programma, l'altra coppia è per i dati. Il registro di comando e tutti i riferimenti al testo del programma funzionano con la prima coppia di registri; i riferimenti ai dati utilizzano la seconda coppia di registri. Grazie a questo meccanismo diventa possibile condividere un programma tra più utenti memorizzando nella RAM una sola copia del programma, che in uno schema semplice è esclusa. Quando il programma n. 1 è in esecuzione, i quattro registri sono posizionati come mostrato in Fig. 4 (b) a sinistra, quando il programma n. 2 è in esecuzione - a destra. La gestione del gestore della memoria è una funzione del sistema operativo.

Il prossimo nella struttura della memoria è il disco magnetico (disco rigido). La memoria del disco è due ordini di grandezza più economica della RAM in termini di bit e di dimensioni maggiori, ma l'accesso ai dati presenti sul disco richiede circa tre ordini di grandezza in più. Il motivo della bassa velocità di un disco rigido è il fatto che l'unità è una struttura meccanica. Il disco rigido è costituito da una o più piastre metalliche che ruotano ad una velocità di 5400, 7200 o 10800 giri al minuto (Fig. 5.). Le informazioni vengono registrate su piastre sotto forma di cerchi concentrici. Le testine di lettura/scrittura in ciascuna determinata posizione possono leggere un anello sul piatto chiamato traccia. Insieme, le tracce per una determinata posizione della forca formano un cilindro.

Ogni traccia è divisa in un numero di settori, tipicamente 512 byte per settore. SU azionamenti moderni i cilindri esterni contengono più settori di quelli interni. Lo spostamento di una testa da un cilindro all'altro richiede circa 1 ms, mentre lo spostamento su un cilindro casuale richiede da 5 a 10 ms, a seconda dell'unità. Quando la testa si trova sopra la traccia desiderata, è necessario attendere che il motore ruoti il ​​disco in modo che il settore richiesto si trovi sotto la testa. Questa operazione richiede dai 5 ai 10 ms aggiuntivi, a seconda della velocità di rotazione del disco. Quando un settore è sotto la testa, il processo di lettura o scrittura avviene a velocità che vanno da 5 MB/s (per unità a bassa velocità) a 160 MB/s (per unità ad alta velocità).

L'ultimo strato è occupato dal nastro magnetico. Questo mezzo veniva spesso utilizzato per creare copie di backup spazio sul disco rigido o spazio di archiviazione insiemi di grandi dimensioni dati. Per accedere alle informazioni, il nastro veniva inserito in un lettore di nastri magnetici, quindi veniva riavvolto fino al blocco di informazioni richiesto. L'intero processo è durato pochi minuti. La gerarchia di memoria descritta è tipica, ma in alcune forme di realizzazione possono essere presenti non tutti i livelli o altri tipi di essi (ad esempio un disco ottico). In ogni caso, quando ci si sposta nella gerarchia dall'alto verso il basso, il tempo di accesso casuale aumenta significativamente da dispositivo a dispositivo e la capacità aumenta in modo equivalente al tempo di accesso.

Oltre ai tipi sopra descritti, molti computer dispongono di memoria ad accesso casuale di sola lettura (ROM, Read Only Memory), che non perde il suo contenuto quando il sistema informatico viene spento. La ROM viene programmata durante la produzione e successivamente il suo contenuto non può essere modificato. Su alcuni computer, la ROM contiene programmi di avvio utilizzati per avviare il computer e alcune schede I/O per controllare i dispositivi di basso livello.

Anche la ROM cancellabile elettricamente (EEPROM, Electrically Erasable ROM) e la flash RAM (flash RAM) non sono volatili, ma a differenza della ROM, il loro contenuto può essere cancellato e riscritto. Tuttavia, la scrittura dei dati su di essi richiede molto più tempo rispetto alla scrittura sulla RAM. Pertanto, vengono utilizzati esattamente allo stesso modo delle ROM.

Esiste un altro tipo di memoria: la memoria CMOS, che è volatile e viene utilizzata per memorizzare la data e l'ora correnti. La memoria è alimentata da una batteria integrata nel computer e può contenere parametri di configurazione (ad esempio, indicando da quale disco rigido eseguire l'avvio).

3. Dispositivi I/O

Altri dispositivi che interagiscono strettamente con il sistema operativo sono i dispositivi di input/output, costituiti da due parti: il controller e il dispositivo stesso. Il controller è un microcircuito (chipset) su una scheda inserita in un connettore, che riceve ed esegue comandi dal sistema operativo.

Ad esempio, il controller riceve un comando per leggere un settore specifico dal disco. Per eseguire il comando, il controller converte il numero lineare del settore del disco nel numero del cilindro, del settore e della testina. L'operazione di conversione è complicata dal fatto che i cilindri esterni possono avere più settori di quelli interni. Il controller determina quindi quale cilindro si trova sopra questo momento testa e fornisce una sequenza di impulsi per spostare la testa del numero di cilindri richiesto. Dopodiché il controller attende che il disco ruoti, posizionando il settore richiesto sotto la testa. Poi i processi di lettura e memorizzazione dei bit che arrivano dal disco, i processi di rimozione dell'intestazione e di calcolo somma di controllo. Successivamente, il controllore raccoglie i bit ricevuti in parole e li memorizza in memoria. Per eseguire questo lavoro, i controller contengono firmware integrato.

Il dispositivo I/O stesso ha un'interfaccia semplice che deve essere conforme allo standard IDE unificato (IDE, Integrated Drive Electronics - interfaccia dell'unità integrata). Poiché l'interfaccia del dispositivo è nascosta dal controller, il sistema operativo vede solo l'interfaccia del controller, che potrebbe differire dall'interfaccia del dispositivo.

Poiché i controller per diversi dispositivi I dispositivi I/O differiscono tra loro, quindi per gestirli sono necessari software - driver appropriati. Pertanto, ciascun produttore di controller deve fornire i driver per i controller supportati. sistemi operativi. Esistono tre modi per installare il driver nel sistema operativo:

Ricostruire il kernel con un nuovo driver e quindi riavviare il sistema, che è il modo in cui funzionano molti sistemi UNIX;

Creare una voce nel file incluso nel sistema operativo che richiede un driver e riavviare il sistema; durante l'avvio iniziale, il sistema operativo troverà conducente richiesto e scaricarlo; Ecco come funziona il sistema operativo Windows;

Accetta nuovi driver e installali rapidamente utilizzando il sistema operativo mentre è in esecuzione; Questo metodo viene utilizzato dai bus rimovibili USB e IEEE 1394, che richiedono sempre driver caricati dinamicamente.

Esistono determinati registri per la comunicazione con ciascun controller. Ad esempio, un controller del disco minimo può avere registri per specificare l'indirizzo del disco, l'indirizzo della memoria, il numero del settore e la direzione dell'operazione (lettura o scrittura). Per attivare il controller, il driver riceve un comando dal sistema operativo, quindi lo traduce in valori adatti alla scrittura nei registri del dispositivo.

Su alcuni computer, i registri dei dispositivi I/O sono mappati nello spazio degli indirizzi del sistema operativo in modo che possano essere letti o scritti come normali parole in memoria. Gli indirizzi dei registri vengono posizionati nella RAM fuori dalla portata dei programmi utente per proteggere i programmi utente dall'hardware (ad esempio, utilizzando i registri base e limite).

Su altri computer, i registri dei dispositivi si trovano in porte I/O speciali e ciascun registro ha il proprio indirizzo di porta. Su tali macchine, i comandi IN e OUT sono disponibili in modalità privilegiata, che consentono ai conducenti di leggere e scrivere i registri. Il primo schema elimina la necessità di istruzioni I/O speciali, ma utilizza parte dello spazio degli indirizzi. Il secondo schema non influisce sullo spazio degli indirizzi, ma richiede comandi speciali. Entrambi gli schemi sono ampiamente utilizzati. L'input e l'output dei dati viene effettuato in tre modi.

1. Il programma utente invia una richiesta di sistema, che il kernel traduce in una chiamata di procedura per il driver corrispondente. Il driver inizia quindi il processo di I/O. Durante questo periodo, il driver esegue un ciclo di programma molto breve, verificando costantemente lo stato di pronto del dispositivo con cui sta lavorando (di solito c'è qualche bit che indica che il dispositivo è ancora occupato). Una volta completata l'operazione I/O, il driver inserisce i dati dove sono necessari e ritorna a lo stato iniziale. Il sistema operativo restituisce quindi il controllo al programma che ha effettuato la chiamata. Questo metodo è chiamato ready wait o active wait e presenta uno svantaggio: il processore deve interrogare il dispositivo finché non completa il suo lavoro.

2. Il driver avvia il dispositivo e gli chiede di emettere un'interruzione una volta completato l'I/O. Successivamente, il driver restituisce i dati, il sistema operativo blocca, se necessario, il programma chiamante e inizia a svolgere altre attività. Quando il controller rileva la fine di un trasferimento dati, genera un interrupt per segnalare il completamento dell'operazione. Il meccanismo di implementazione input-output avviene come segue (Fig. 6.a):

Passo 1: il driver trasmette il comando al controller, scrivendo le informazioni nei registri del dispositivo; Il controller avvia il dispositivo I/O.

Passaggio 2: dopo aver terminato la lettura o la scrittura, il controller invia un segnale al chip del controller di interruzione.

Passaggio 3: se il controller degli interrupt è pronto a ricevere un interrupt, invia un segnale a un pin specifico della CPU.

Passo 4: Il controller degli interrupt inserisce il numero del dispositivo I/O sul bus in modo che la CPU possa leggerlo e sapere quale dispositivo ha completato il suo lavoro. Quando la CPU riceve un'interruzione, il contenuto del contatore del programma (PC) e della parola di stato del processore (PSW) viene inserito nello stack corrente e il processore passa alla modalità privilegiata (modalità kernel del sistema operativo). Il numero del dispositivo I/O può essere utilizzato come indice di una parte di memoria utilizzata per trovare l'indirizzo del gestore degli interrupt di questo dispositivo. Questa parte della memoria è chiamata vettore di interruzione. Quando il gestore dell'interruzione (la parte del driver del dispositivo che ha inviato l'interruzione) inizia il suo lavoro, rimuove il contatore del programma e la parola di stato del processore situate nello stack, li memorizza e interroga il dispositivo per informazioni sul suo stato. Al termine dell'elaborazione dell'interruzione il controllo ritorna al programma utente precedentemente eseguito, al comando la cui esecuzione non è ancora terminata (figura 6 b).

3.Per l'input e l'output delle informazioni viene utilizzato un controller di accesso diretto alla memoria (DMA, Direct Memory Access), che controlla il flusso di bit tra la RAM e alcuni controller senza intervento costante da parte del processore centrale. Il processore chiama il chip DMA, gli dice quanti byte trasferire, fornisce gli indirizzi del dispositivo e della memoria e la direzione del trasferimento dei dati e lascia che il chip faccia le sue cose. Al termine, il DMA emette un'interruzione, che viene gestita di conseguenza.

Gli interrupt possono verificarsi in momenti inappropriati, ad esempio durante l'elaborazione di un altro interrupt. Per questo motivo la CPU ha la possibilità di disabilitare gli interrupt e abilitarli successivamente. Mentre gli interrupt sono disabilitati, tutti i dispositivi che hanno completato il loro lavoro continuano a inviare i loro segnali, ma il processore non viene interrotto finché gli interrupt non vengono abilitati. Se più dispositivi escono contemporaneamente mentre gli interrupt sono disabilitati, il controller degli interrupt decide quale deve essere elaborato per primo, solitamente in base alle priorità statiche assegnate a ciascun dispositivo.

Il sistema informatico Pentium dispone di otto bus (bus della cache, bus locale, bus della memoria, PCI, SCSI, USB, IDE e ISA). Ogni bus ha la propria velocità di trasferimento dati e le proprie funzioni. Il sistema operativo deve contenere informazioni su tutti i bus per gestire il computer e configurarlo.

Bus ISA (Industry Standard Architecture) - apparso per la prima volta sui computer IBM PC/AT, funziona a 8,33 MHz e può trasferire due byte per ciclo di clock con una velocità massima di 16,67 MB/s; è incluso nel sistema per compatibilità con le vecchie schede I/O lente.

Bus PCI (Peripheral Component Interconnect) - creato da Intel come successore del bus ISA, può funzionare ad una frequenza di 66 MHz e trasferire 8 byte per clock ad una velocità di 528 MB/s. Attualmente Bus PCI utilizzare la maggior parte dei dispositivi I/O ad alta velocità, nonché i computer con processori non Intel, poiché molte schede I/O sono compatibili con esso.

Il bus locale nel sistema Pentium viene utilizzato dalla CPU per trasferire i dati al chip bridge PCI, che accede alla memoria su un bus di memoria dedicato, spesso funzionante a 100 MHz.

Il bus della cache viene utilizzato per connettere la cache esterna, poiché i sistemi Pentium dispongono di una cache di primo livello (cache L1) incorporata nel processore e di una grande cache esterna di secondo livello (cache L2).

Il bus IDE viene utilizzato per collegare le periferiche: dischi e lettori CD-ROM. Il bus è un discendente dell'interfaccia PC/AT Disk Controller ed è attualmente standard su tutti i sistemi basati su processori Pentium.

Bus USB (universale Autobus seriale, bus seriale universale) è progettato per collegare dispositivi di input/output lenti (tastiera, mouse) a un computer. Utilizza un piccolo connettore a quattro fili con due fili che fornisce alimentazione ai dispositivi USB.

Il bus USB è un bus centralizzato sul quale il dispositivo host interroga i dispositivi I/O ogni millisecondo per verificare se dispongono di dati. Può gestire il download dei dati ad una velocità di 1,5 MB/s. Tutti i dispositivi USB utilizzano lo stesso driver, quindi possono essere collegati al sistema senza riavviarlo.

Il bus SCSI (Small Computer System Interface) è un bus ad alte prestazioni utilizzato per dischi veloci, scanner e altri dispositivi che richiedono una larghezza di banda significativa. Le sue prestazioni raggiungono i 160 MB/s. Il bus SCSI viene utilizzato sui sistemi Macintosh ed è popolare sui sistemi UNIX e altri sistemi basati su processori Intel.

Il bus IEEE 1394 (FireWire) è un bus seriale a bit e supporta il trasferimento dati a pacchetto a velocità fino a 50 MB/s. Questa proprietà consente di collegare videocamere digitali portatili e altri dispositivi multimediali al computer. A differenza di un pneumatico Bus USB IEEE 1394 non ha un controller centrale.

Il sistema operativo deve essere in grado di riconoscere i componenti hardware ed essere in grado di configurarli. Questo requisito ha portato Intel e Microsoft per sviluppare un sistema di personal computer chiamato plug and play. Prima di questo sistema, ciascuna scheda I/O aveva indirizzi di registro I/O fissi e un livello di richiesta di interruzione. Ad esempio, la tastiera utilizzava l'interrupt 1 e gli indirizzi compresi tra 0x60 e 0x64; Il controller del floppy disk utilizzava l'interrupt 6 e gli indirizzi da 0x3F0 a 0x3F7; la stampante utilizzava l'interrupt 7 e gli indirizzi da 0x378 a 0x37A.

Se l'utente ha acquistato scheda audio e modem, è capitato che questi dispositivi utilizzassero accidentalmente lo stesso interrupt. Si è verificato un conflitto, quindi i dispositivi non potevano funzionare insieme. Possibile soluzione Si trattava di costruire una serie di interruttori DIP (jumper) in ciascuna scheda e configurare ciascuna scheda in modo che gli indirizzi delle porte e i numeri di interruzione di diversi dispositivi non fossero in conflitto tra loro.

Il plug and play consente al sistema operativo di raccogliere automaticamente informazioni sui dispositivi I/O, assegnare centralmente livelli di interruzione e indirizzi I/O e quindi comunicare queste informazioni a ciascuna scheda. Questo sistema funziona su computer Pentium. Ogni computer con Processore Pentium contiene la scheda madre su cui si trova il programma: il sistema BIOS (Basic Input Output System). Il BIOS contiene programmi I/O di basso livello, comprese le procedure per la lettura dalla tastiera, per la visualizzazione delle informazioni sullo schermo, per i dati I/O dal disco, ecc.

All'avvio del computer, viene avviato il sistema BIOS, che controlla la quantità di RAM installata nel sistema, la connessione e il corretto funzionamento della tastiera e degli altri dispositivi principali. Successivamente, il BIOS controlla i bus ISA e PCI e tutti i dispositivi ad essi collegati. Alcuni di questi dispositivi sono tradizionali (pre-plug and play). Hanno livelli di interruzione e indirizzo di porta I/O fissi (ad esempio, impostati utilizzando interruttori o ponticelli sulla scheda I/O e non possono essere modificati dal sistema operativo). Questi dispositivi vengono registrati, quindi vengono registrati i dispositivi plug and play. Se i dispositivi presenti sono diversi da quelli presenti durante l'ultimo avvio, allora vengono configurati nuovi dispositivi.

Il BIOS determina quindi da quale dispositivo eseguire l'avvio provando a turno ciascuno degli elenchi archiviati nella memoria CMOS. L'utente può modificare questo elenco accedendo al programma di configurazione del BIOS immediatamente dopo l'avvio. In genere, tenterà prima di eseguire l'avvio dal disco floppy. Se fallisce, viene provato il CD. Se il tuo computer non dispone sia di un floppy disk che di un CD, il sistema si avvia dal disco rigido. Il primo settore viene letto in memoria dal dispositivo di avvio ed eseguito. Questo settore contiene un programma che controlla la tabella delle partizioni alla fine del settore di avvio per determinare quale partizione è attiva. Il bootloader secondario viene quindi letto dalla stessa partizione. Legge il sistema operativo dalla partizione attiva e lo avvia.

Il sistema operativo esegue quindi il polling del BIOS per ottenere informazioni sulla configurazione del computer e verifica la presenza di un driver per ciascun dispositivo. Se manca il driver, il sistema operativo chiede all'utente di inserire un floppy disk o un CD contenente il driver (questi dischetti sono forniti dal produttore del dispositivo). Se tutti i driver sono presenti, il sistema operativo li carica nel kernel. Quindi inizializza le tabelle dei driver, crea tutti i processi in background necessari ed esegue il programma di immissione della password o GUI ad ogni terminale.

5. Storia dello sviluppo della tecnologia informatica

Tutti i personal computer compatibili con IBM sono dotati di processori compatibili con Intel. La storia dello sviluppo dei microprocessori della famiglia Intel è brevemente la seguente. Il primo microprocessore universale di Intel apparve nel 1970. Si chiamava Intel 4004, era a quattro bit e aveva la capacità di inserire/emettere ed elaborare parole a quattro bit. La sua velocità era di 8000 operazioni al secondo. Il microprocessore Intel 4004 è stato progettato per l'uso in calcolatrici programmabili con una dimensione di memoria di 4 KB.

Tre anni dopo, Intel pubblicò il processore 8080, che poteva già eseguire operazioni aritmetiche a 16 bit, aveva un bus di indirizzi a 16 bit e, quindi, poteva indirizzare fino a 64 KB di memoria (2.516 0 = 65536). Il 1978 fu segnato dal rilascio del processore 8086 con una dimensione della parola di 16 bit (due byte), un bus di 20 bit e poteva funzionare con 1 MB di memoria (2 520 0 = 1048576, o 1024 KB), divisa in blocchi (segmenti) da 64 KB ciascuno. Il processore 8086 era incluso nei computer compatibili con IBM PC e IBM PC/XT. Il successivo passo importante nello sviluppo di nuovi microprocessori fu il processore 8028b, apparso nel 1982. Aveva un bus indirizzi a 24 bit, poteva gestire 16 megabyte di spazio di indirizzi ed era installato su computer compatibili con IBM PC/AT. Nell'ottobre 1985, l'80386DX fu rilasciato con un bus di indirizzi a 32 bit (spazio di indirizzi massimo 4 GB) e nel giugno 1988 fu rilasciato l'80386SX, che era più economico dell'80386DX e aveva un bus di indirizzi a 24 bit. Poi nell'aprile 1989 apparve il microprocessore 80486DX e nel maggio 1993 la prima versione del processore Pentium (entrambi con bus di indirizzi a 32 bit).

Nel maggio 1995 a Mosca, alla fiera internazionale Comtec-95, Intel presentò nuovo processore-P6.

Uno degli obiettivi più importanti fissati durante lo sviluppo del P6 era raddoppiare le prestazioni del processore Pentium. Allo stesso tempo, la produzione delle prime versioni di P6 verrà effettuata secondo "Intel" già sottoposto a debug e utilizzato nella produzione ultime versioni Tecnologia dei semiconduttori Pentium (O,6 micron, 3,3 V).

L'utilizzo dello stesso processo di produzione garantisce che il P6 possa essere prodotto in serie senza grossi problemi. Tuttavia, ciò significa che il raddoppio delle prestazioni si ottiene solo attraverso miglioramenti globali nella microarchitettura del processore. La microarchitettura P6 è stata progettata utilizzando una combinazione attentamente studiata e ottimizzata di varie tecniche architettoniche. Alcuni di essi sono stati precedentemente testati su processori di computer di grandi dimensioni, alcuni sono stati proposti da istituzioni accademiche e il resto è stato sviluppato dagli ingegneri Intel. Questa combinazione unica di caratteristiche architettoniche, che Intel chiama "esecuzione dinamica", ha permesso ai primi die P6 di superare i livelli di prestazioni originariamente pianificati.

Se confrontata con processori Intel alternativi della famiglia x86, risulta che la microarchitettura P6 ha molto in comune con la microarchitettura dei processori Nx586 di NexGen e K5 di AMD e, anche se in misura minore, con M1 di Cyrix. Questa comunanza è spiegata dal fatto che gli ingegneri di quattro aziende stavano risolvendo lo stesso problema: introdurre elementi della tecnologia RISC mantenendo la compatibilità con l'architettura Intel x86 CISC.

Due cristalli in un unico pacchetto

Il vantaggio principale e la caratteristica unica del P6 è il suo posizionamento nello stesso pacchetto con il processore è presente una memoria cache statica secondaria da 256 KB, collegata al processore tramite un bus appositamente dedicato. Questo design dovrebbe semplificare significativamente la progettazione dei sistemi basati su P6. Il P6 è il primo microprocessore progettato per la produzione di massa a contenere due chip in un unico pacchetto.

Il die della CPU del P6 contiene 5,5 milioni di transistor; Cristallo cache L2: 15,5 milioni. In confronto, l'ultimo modello Pentium includeva circa 3,3 milioni di transistor e la cache L2 era implementata utilizzando un set esterno di die di memoria.

Un numero così elevato di transistor nella cache è spiegato dalla sua natura statica. La memoria statica del P6 utilizza sei transistor per memorizzare un bit, mentre la memoria dinamica avrebbe bisogno solo di un transistor per bit. La memoria statica è più veloce, ma più costosa. Sebbene il numero di transistor su un chip con cache secondaria sia tre volte maggiore rispetto a quello su un chip del processore, le dimensioni fisiche della cache sono inferiori: 202 millimetri quadrati contro 306 del processore. Entrambi i cristalli sono racchiusi insieme in un pacchetto ceramico con 387 contatti ("dual cavità pin-drid array"). Entrambi i die sono realizzati utilizzando la stessa tecnologia (0,6 µm, metallo-BiCMOS a 4 strati, 2,9 V). Consumo energetico massimo stimato: 20 W a 133 MHz.

Il primo motivo per combinare il processore e la cache secondaria in un unico pacchetto è facilitare la progettazione e la produzione di sistemi basati su P6 ad alte prestazioni. Le prestazioni di un sistema informatico costruito su processore veloce, dipende molto dalla messa a punto dei chip dell'ambiente del processore, in particolare della cache secondaria. Non tutte le aziende produttrici di computer possono permettersi la ricerca adeguata. Nel P6 la cache secondaria è già configurata in modo ottimale per il processore, il che semplifica il design della scheda madre.

Il secondo motivo della fusione è migliorare la produttività. La CPU di secondo livello è collegata al processore tramite un bus largo 64 bit appositamente dedicato e funziona alla stessa frequenza di clock del processore.

I primi processori Pentium a 60 e 66 MHz accedevano alla cache secondaria tramite un bus a 64 bit alla stessa velocità di clock. Tuttavia, con l'aumento della velocità di clock del Pentium, è diventato troppo difficile e costoso per i progettisti mantenere tali velocità di clock sulla scheda madre. Pertanto, iniziarono ad essere utilizzati i divisori di frequenza. Ad esempio, per un Pentium da 100 MHz, il bus esterno funziona a una frequenza di 66 MHz (per un Pentium da 90 MHz è rispettivamente 60 MHz). Il Pentium utilizza questo bus sia per accedere alla cache secondaria che per accedere alla memoria principale e ad altri dispositivi, come il chipset PCI.

L'utilizzo di un bus dedicato per accedere alla cache secondaria migliora le prestazioni del sistema. In primo luogo, ciò consente la completa sincronizzazione delle velocità del processore e del bus; in secondo luogo, viene eliminata la concorrenza con altre operazioni di I/O e i relativi ritardi. Il bus della cache L2 è completamente separato dal bus esterno, attraverso il quale la memoria e dispositivi esterni. Il bus esterno a 64 bit può funzionare a metà, un terzo o un quarto della velocità del processore, mentre il bus della cache secondario funziona in modo indipendente alla massima velocità.

Combinare il processore e la cache secondaria in un unico pacchetto e comunicarli su un bus dedicato è un passo avanti verso le tecniche di miglioramento delle prestazioni utilizzate nei processori RISC più potenti. Pertanto, nel processore Alpha 21164 di Digital, la cache di secondo livello da 96 kB si trova nel core del processore, come la cache primaria. Ciò fornisce prestazioni della cache molto elevate aumentando il numero di transistor sul chip a 9,3 milioni. Le prestazioni dell'Alpha 21164 sono 330 SPECint92 a 300 MHz. Le prestazioni del P6 sono inferiori (Intel stima 200 SPECint92 a 133 MHz), ma il P6 fornisce il miglior rapporto costo/prestazioni per il suo potenziale mercato.

Quando si valuta il rapporto costo/prestazioni, vale la pena considerare che mentre il P6 può essere più costoso dei suoi concorrenti, la maggior parte degli altri processori devono essere circondati da un set aggiuntivo di chip di memoria e da un controller della cache. Inoltre, per ottenere prestazioni della cache paragonabili, altri processori dovranno utilizzare cache più grandi di 256 KB.

Intel offre in genere numerose varianti dei suoi processori. Questo viene fatto per soddisfare le diverse esigenze dei progettisti di sistemi e lasciare meno spazio ai modelli concorrenti. Pertanto, possiamo supporre che subito dopo l'inizio della produzione del P6, sia le modifiche con un volume maggiore di memoria cache secondaria, sia le modifiche più economiche con una posizione esterna della cache secondaria, ma con un bus dedicato mantenuto tra la cache secondaria e apparirà il processore.

Pentium come punto di partenza

Processore Pentium con relativa pipeline e superscalare l’architettura ha raggiunto livelli prestazionali impressionanti. Il Pentium contiene due pipeline a 5 stadi che possono funzionare in parallelo ed eseguire due istruzioni intere per ciclo di clock della macchina. In questo caso, è possibile eseguire solo una coppia di comandi in parallelo, susseguendosi nel programma e soddisfacendo determinate regole, ad esempio l'assenza di dipendenze dai registri del tipo "scrittura dopo lettura".

In P6, per aumentare la produttività, è stata effettuata la transizione a un'unica pipeline a 12 stadi. L'aumento del numero di stadi porta a una diminuzione del lavoro svolto in ogni fase e, di conseguenza, a una riduzione del tempo che un team trascorre in ciascuna fase del 33% rispetto al Pentium. Ciò significa che utilizzando la stessa tecnologia utilizzata per produrre un P6 come un Pentium da 100 MHz si otterrebbe un P6 con clock a 133 MHz.

La potenza dell'architettura superscalare del Pentium, con la sua capacità di eseguire due istruzioni per clock, sarebbe difficile da battere senza un approccio completamente nuovo. Il nuovo approccio di P6 elimina la rigida relazione tra le tradizionali fasi "fetch" ed "execute", dove la sequenza dei comandi attraverso queste due fasi corrisponde alla sequenza dei comandi nel programma.

Il nuovo approccio prevede l'utilizzo del cosiddetto command pool e new metodi efficaci prevedere il comportamento futuro del programma. In questo caso la tradizionale fase di “esecuzione” viene sostituita da due: “dispacciamento/esecuzione” e “rollback”. Di conseguenza, i comandi possono iniziare l'esecuzione in qualsiasi ordine, ma completare sempre la propria esecuzione in conformità con l'ordine originale nel programma. Il core P6 è implementato come tre dispositivi indipendenti che interagiscono attraverso un pool di comandi (Fig. 1).

Il problema principale nel migliorare la produttività

La decisione di organizzare il P6 come tre dispositivi indipendenti che interagiscono tramite un pool di istruzioni è stata presa dopo un'analisi approfondita dei fattori che limitano le prestazioni dei moderni microprocessori. Un fatto fondamentale, vero per il Pentium e per molti altri processori, è che la potenza del processore non viene utilizzata al massimo durante l'esecuzione di programmi del mondo reale.

Mentre la velocità del processore è aumentata almeno 10 volte negli ultimi 10 anni, i tempi di accesso alla memoria principale sono diminuiti solo del 60%. Questo crescente ritardo nella velocità della memoria rispetto alla velocità del processore era il problema fondamentale da risolvere durante la progettazione del P6.

Un possibile approccio per risolvere questo problema è spostare l'attenzione sullo sviluppo di componenti ad alte prestazioni che circondano il processore. Tuttavia, la produzione in serie di sistemi che includano sia un processore ad alte prestazioni che chip ambientali specializzati ad alta velocità sarebbe troppo costosa.

Una possibile soluzione di forza bruta potrebbe essere quella di aumentare la dimensione della cache L2 per ridurre la percentuale di volte in cui la cache non riesce a raggiungere i dati richiesti.

Questa soluzione è efficace, ma anche estremamente costosa, soprattutto considerando gli attuali requisiti di velocità per i componenti della cache L2. Il P6 è stato progettato dal punto di vista dell'implementazione efficiente di un sistema di calcolo completo ed era richiesto che le prestazioni elevate dell'intero sistema fossero ottenute utilizzando un sottosistema di memoria a basso costo.

Così, La combinazione di tecniche architetturali del P6 come una migliore previsione dei rami (la sequenza successiva di comandi è quasi sempre determinata correttamente), analisi del flusso di dati (viene determinato l'ordine ottimale di esecuzione dei comandi) ed esecuzione lookahead (la sequenza prevista di comandi viene eseguita senza tempi di inattività nell'ordine ottimale) prestazioni raddoppiate rispetto al Pentium utilizzando la stessa tecnologia di produzione. Questa combinazione di metodi è chiamata esecuzione dinamica.

Attualmente Intel sta sviluppando una nuova tecnologia di produzione da 0,35 micron, che consentirà di produrre processori P6 con una velocità di clock del core di oltre 200 MHz.

P6 come piattaforma per la creazione di server potenti

Tra i più significativi Le tendenze nello sviluppo dei computer negli ultimi anni possono essere evidenziate come l'uso crescente di sistemi basati su processori della famiglia x86 come server applicativi e il ruolo crescente di Intel come fornitore di tecnologie diverse dai processori, come bus, tecnologie di rete, compressione video, memoria flash e strumenti di amministrazione del sistema.

Il rilascio del processore P6 continua la politica di Intel di portare sul mercato di massa funzionalità precedentemente disponibili solo nei computer più costosi. Viene fornito il controllo di parità per i registri P6 interni e il bus a 64 bit che collega il core del processore e la cache di secondo livello è dotato di strumenti di rilevamento e correzione degli errori. Le nuove funzionalità diagnostiche integrate nel P6 consentono ai produttori di progettare sistemi più affidabili. Il P6 offre la possibilità di ottenere informazioni attraverso i contatti del processore o utilizzando il software su più di 100 variabili o eventi del processore che si verificano in esso, come l'assenza di dati nella cache, il contenuto dei registri, la comparsa di codice automodificante e Presto. Il sistema operativo e altri programmi possono leggere queste informazioni per determinare lo stato del processore. P6 offre anche un supporto migliorato per i checkpoint, il che significa che il computer può essere riportato a uno stato registrato in precedenza se si verifica un errore.

Documenti simili

    La tecnologia informatica è apparsa molto tempo fa, poiché agli albori dello sviluppo della civiltà esisteva la necessità di vari tipi di calcoli. Rapido sviluppo della tecnologia informatica. Creazione dei primi PC, mini-computer a partire dagli anni '80 del XX secolo.

    abstract, aggiunto il 25/09/2008

    Caratteristiche dei sistemi di manutenzione tecnica e preventiva delle apparecchiature informatiche. Programmi diagnostici per sistemi operativi. Interrelazione dei sistemi di controllo automatizzati. Proteggere il computer da influenze avverse esterne.

    abstract, aggiunto il 25/03/2015

    Sviluppo di un sistema informativo e analitico per l'analisi e l'ottimizzazione della configurazione delle apparecchiature informatiche. Struttura del controllo automatizzato delle apparecchiature informatiche. Software, giustificazione dell'efficienza economica del progetto.

    tesi, aggiunta il 20/05/2013

    La fase manuale dello sviluppo della tecnologia informatica. Sistema numerico posizionale. Sviluppo della meccanica nel XVII secolo. Fase elettromeccanica di sviluppo della tecnologia informatica. Computer di quinta generazione. Opzioni e caratteristiche distintive supercomputer.

    lavoro del corso, aggiunto il 18/04/2012

    La struttura e il principio di funzionamento di un personal computer (PC). Diagnostica delle prestazioni del PC e identificazione dei guasti. Compiti Manutenzione strutture informatiche. Sviluppo di metodi per mantenere le apparecchiature in condizioni di lavoro.

    lavoro del corso, aggiunto il 13/07/2011

    Studio delle pratiche straniere e nazionali nello sviluppo della tecnologia informatica, nonché delle prospettive per lo sviluppo dei computer nel prossimo futuro. Tecnologie per l'utilizzo del computer. Fasi di sviluppo dell'industria informatica nel nostro Paese. Unione di PC e comunicazioni.

    lavoro del corso, aggiunto il 27/04/2013

    Classificazione delle procedure di progettazione. Storia della sintesi tra tecnologia informatica e progettazione ingegneristica. Funzioni dei sistemi di progettazione assistita da computer, loro software. Caratteristiche dell'uso di scanner, manipolatori e stampanti tridimensionali.

    abstract, aggiunto il 25/12/2012

    Automazione dell'elaborazione dei dati. L'informatica e i suoi risultati pratici. Storia della creazione della tecnologia informatica digitale. Calcolatori elettromeccanici. Utilizzo tubi a vuoto e computer di prima, terza e quarta generazione.

    tesi, aggiunta il 23/06/2009

    Il concetto e le caratteristiche di un personal computer, le sue parti principali e il loro scopo. Strumenti didattici dell'informatica e caratteristiche dell'organizzazione del lavoro in un'aula di informatica. Attrezzatura dei luoghi di lavoro e applicazione di software.

    abstract, aggiunto il 07/09/2012

    La composizione di un sistema informatico è la configurazione del computer, del suo hardware e software. Dispositivi e strumenti che costituiscono la configurazione hardware di un personal computer. Memoria principale, porte I/O, adattatore per periferiche.




Superiore