Anteprima
Vedrai una selezione di 12 pagine su 51
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 1 Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 2
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 6
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 11
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 16
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 21
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 26
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 31
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 36
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 41
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 46
Anteprima di 12 pagg. su 51.
Scarica il documento per vederlo tutto.
Appunti discorsivi del corso Prove di abilità informatica. Completo con tutti gli argomenti del corso Pag. 51
1 su 51
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

IL SOFTWARE

Introduzione

Il termine è costituito dall'unione di due parole:

software

- (morbido)

soft

- (manufatto, componente, oggetto)

ware

L'origine del termine software risale alla Seconda Guerra Mondiale.

I tecnici dell'esercito inglese erano impegnati nel decriptare i codici tedeschi di

dispositivo elettromeccanico per cifrare e decifrare messaggi.

Enigma,

Oramai siamo talmente abituati a utilizzare software in qualunque momento della

giornata

Storia del software ed evoluzione del software

Se vogliamo trovare un inizio alla storia del software, possiamo affermare che

tutto ebbe inizio con interminabili sequenze binarie composte dai simboli 0 e 1,

ovvero la programmazione in codice binario.

1725, → dare a un telaio i comandi

Basile Bouchon intuizione straordinaria:

necessari per disegnare automaticamente sulla stoffa le fantasie da lui

desiderate

Macchina di → architettura di →

Turing von Neumann basi nello sviluppo del

"la prima programmatrice della storia": →

software Ada Lovelace Charles

Macchina Differenziale: equazioni di secondo grado

Babbage

Macchina Analitica: qualunque forma di calcolo

→ La cita nel suo testo fondamentale: "Computing Machinery and

Alan Turing

Intelligence"

Alcune tappe:

nasce Spacewar, il primo videogioco della storia

1961: viene creato al MIT un software che mette in collegamento vari computer e

1965:

invia brevi messaggi di testo: è l'alba delle email

nasce Telenet, il pilastro di Internet.

1975: viene lanciato Microsoft Word, che ha mandato in soffitta le macchine da

1983:

scrivere il formato JPEG ha rivoluzionato per sempre il nostro rapporto con

1992:

la fotografia Evoluzione del software → è bidirezionale → Evoluzione

dell'hardware

Tipi di software

L'hardware e il software sono organizzati a livelli

Ciascun livello corrisponde a una macchina dotata di un proprio insieme di

funzionalità Ogni macchina è caratterizzata da un proprio linguaggio, formato

dalle istruzioni che quella macchina sa eseguire

Ciascun livello fornisce un linguaggio più semplice da utilizzare rispetto a quello

del livello sottostante

Ciascun livello è realizzato in termini del linguaggio del livello immediatamente

sottostante Il software può essere diviso in due grandi categorie:

- Software di base

- Software applicativo

Nell'organizzazione a livelli l'hardware rappresenta l'unica

macchina reale Gli strati software corrispondono a cosiddette

macchine virtuali

Le diverse macchine e i relativi linguaggi divengono sempre più astratti

Licenze d'utilizzo e distribuzione

La licenza d'uso è un documento che accompagna il software e specifica i diritti e i

di chi lo riceve e di chi lo diffonde

doveri

Tutte le licenze d'uso traggono il loro valore legale dalle norme sul diritto d'autore,

il

copyright.

Esistono diversi tipi di licenze:

- libere

- Open Source

- proprietarie

gratuito, che però obbliga l'utente alla visualizzazione di banner

Adware:

pubblicitari. Attenzione agli spyware!

gratuito in cui l'autore chiede agli utenti un gesto di

Cardware:

cortesia si può usare legalmente solo dopo averlo

Commerciale:

acquistato programma dimostrativo, distribuito per far

Demo:

conoscere il software programma distribuito

Freeware:

gratuitamente

(GNU Public License): particolare forma di software open source, la cui

GPL

diffusione deve rispondere a precise regole codificate nella licenza

codice sorgente liberamente utilizzabile e a disposizione del

Open source:

pubblico. Esempi tipici di software open-source sono il browser Mozilla, il

sistema operativo Linux, la suite per ufficio Open Office

programmi che, pur essendo liberamente distribuibili, richiedono un

Shareware:

pagamento per poter essere utilizzati in tutte le loro funzioni e senza limitazioni di

tempo

Versione di prova. È un altro modo di definire lo shareware che prevede una

Trial:

scadenza dopo un periodo di utilizzo gratuito, in seguito al quale occorre

acquistare la versione completa

IL SISTEMA OPERATIVO

Concetti base

Un Sistema Operativo è un insieme di programmi standard che permettono di

realizzare un'efficiente comunicazione tra della macchina e

l'hardware l'utente.

Il sistema operativo è il software responsabile della gestione delle risorse del

calcolatore, e in particolare di come le risorse vengono allocate alle applicazioni.

L'utente può richiede al sistema operativo di eseguire un programma, facendo

un doppio click sull'icona di un programma sul desktop del calcolatore.

Per avviare l'esecuzione del programma, il sistema operativo svolge le seguenti

attività:

- individua il codice eseguibile del programma (memorizzato sul disco)

- alloca al programma le risorse necessarie per la sua esecuzione (ad

esempio, una certa quantità di memoria centrale)

- carica il codice eseguibile del programma in memoria centrale

- avvia il programma

Il Sistema Operativo permettere all'utilizzatore di usare in modo semplice e

immediato tutte le risorse (HW e SW) che il sistema di elaborazione mette a

disposizione

l'uso delle risorse a disposizione, attuando opportune

Ottimizzare politiche di

gestione

razionale delle stesse

Fornire un'immagine di tutte le risorse disponibili, da

astratta indipendentemente

come queste funzionino (risorse hardware) e dei dettagli implementativi necessari

al loro uso Programma:

Insieme di istruzioni che deve eseguire il calcolatore ovvero il microprocessore o

CPU per risolvere un particolare problema

Es.: risoluzione equazione di Il grado

Le istruzioni sono codificate in un apposito linguaggio di programmazione (e.g.

linguaggio C) Ogni istruzione, per essere eseguita, deve essere allocata in

memoria centrale

La CPU attraverso il ciclo istruzione esegue ciascuna istruzione (architettura di

von Neumann)

Un calcolatore è una macchina a stati finiti:

- a partire da uno stato iniziale evolve nel tempo attraverso una

sequenza di azioni deterministiche provocate dall'esecuzione di

istruzioni di un programma

Parametri caratteristici di uno stato:

- registri generali, stack pointer, program counter, registro di stato

Processi e risorse

Processo

Programma in esecuzione

Un processo per poter evolvere ha però bisogno di componenti

HW e SW Es.: microprocessore, scheda video, hard disk, etc. etc.

Risorsa

Qualsiasi elemento hardware o software che viene usato da un processo e che

ne condiziona l'avanzamento

Es.: un programma deve effettuare una lettura da un codice a barre per poi

elaborarlo => la risorsa hardware che si occupa della lettura del codice prima o

poi lo deve leggere altrimenti il processo non avanza

Funzionalità

generali Prima

funzione Verso

l'utente:

- Attraverso un'apposita interfaccia, permette di utilizzare applicativi e dati

presenti nel calcolatore (e di creare nuovi dati)

- Permette la condivisione della stessa macchina a più utenti (isolando lo

spazio di lavoro, coordinando l'accesso a risorse condivise)

Verso i programmi:

- Attivazione, esecuzione, terminazione

- Attribuzione delle risorse del calcolatore (CPU, memoria, I/O, ecc.) ai

programmi

- Coordinamento rispetto all'uso condiviso delle risorse

Più processi possono richiedere le stesse risorse, in genere limitate

Tutti i processi in competizione devono comunque ottenere la risorsa

prima o poi I tempi di inattività della risorsa devono essere minimi

Minimizzazione dei tempi di attesa dei processi

● a quale tra i processi in competizione deve essere assegnata

Scheduling:

una certa risorsa

Le responsabilità dello scheduling sono:

- Tenere aggiornate le informazioni sullo stato di ciascuna risorsa

- Gestire i conflitti

- Assegnare una risorsa ad un processo

- Prendere il controllo di una risorsa

il sistema operativo ha il compito di:

Classificazione standard:

- Gestore dei processori

- Gestore della memoria centrale

- Gestore delle periferiche

•Input/Output

- Gestore delle informazioni

•File System

Struttura del Sistema Operativo

Data la sua complessità, un sistema operativo è suddiviso logicamente in strati

con un'architettura a «buccia di cipolla>>>

- Ogni strato ha la responsabilità di una parte delle risorse

- Si appoggia allo strato sottostante

- Comunica con lo strato sovrastante

Ciascun livello costituisce una che:

macchina virtuale

- Usa le del livello sottostante

funzionalità

- Fornisce al livello che lo segue nella gerarchia

servizi

- Gestisce delle mediante politiche invisibili ai livelli superiori

risorse

L’ARCHITETTURA DEL SISTEMA OPERATIVO KERNEL, GESTORE DEI PROCESSI,

GESTORE DELLA MEMORIA

Introduzione

II SO è organizzato a strati

Ciascun strato costituisce una macchina virtuale che gestisce una risorsa

del calcolatore Le principali funzionalità offerte sono:

- La gestione dei processi

- La gestione della memoria

- La gestione delle periferiche

- La gestione del file system

- La gestione della rete

- La gestione dell'interfaccia utente

Esistono diversi tipi di sistema operativo, ma in generale si possono dividere in:

Mono Tasking e Mono Utente:

- Esecuzione di un solo programma applicativo alla volta

- Viene utilizzato da un solo utente per volta

Multi Tasking e Mono Utente:

- Consente di eseguire contemporaneamente più programmi applicativi

Multi Tasking e Multi Utente:

- Consente l'utilizzo contemporaneo da parte di più utenti

- É

multiprogrammato II

Kernel

Il ("nocciolo" o "fulcro in inglese") è il componente centrale di ogni

kernel

sistema operativo. È il primo programma ad essere caricato in memoria

quando si accende un computer e l'ultimo ad essere chiuso in fase di

spegnimento.

Fa da ponte tra le componenti hardware di un computer e i programmi in

esecuzione sul computer stesso.

È possibile individuare 5 tipi di kernel:

- Monolitico

- Microkernel

- Kernel ibrido

- Nanokernel

- Exokernel contiene in un unico file tutte le funzioni primarie di un

Kernel monolitico:

sistema operativo e i driver delle varie periferiche collegate al computer.

implementa solamente alcune funzioni basilari, affidando le altre

Microkernel:

funzionalità a programmi terzi chiamati server

possono essere considerati come un'estensione dei microkernel:

Kernel ibridi:

l'approccio struttu

Dettagli
A.A. 2024-2025
51 pagine
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher bestappuntiepanieri di informazioni apprese con la frequenza delle lezioni di Prova di abilità informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Universita telematica "Pegaso" di Napoli o del prof Sorrentino Marco.