Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
INTRODUZIONE AL CORSO
A cosa servono i computer?
- DEFINIZIONE CLASSICA
- elaborazione automatica delle informazioni
- OGGI
- acquisizione automatica informazioni
- elaborazione
- condivisione informazioni e delle attività tramite reti
INTERNET
- PC SERVER
- eseguono servizi
- RETE
- TELEFONIA
- PC
- WORKSTATION
- COMPUTER "CLIENT" (utilizzatori dei servizi offerti)
Come funziona un computer?
- COMPUTER = MACCHINA
- elettronica
- automatica
- NO intelligenza NO coscienza
- basata su dispositivi elettronici
- svolge compiti in autonomia se viene caricata con le istruzioni
- vasto campo di applicazioni
Possibilità e Limiti
- acquisizione informazioni → INPUT
- invio informazioni → OUTPUT
- memorizzazione permanente informazioni
- recupero delle informazioni
- trasmissione delle informazioni
- elaborazione informazioni
- istruzioni elementari semplici: calcoli, confronti
- sequenze istruzioni elementari
- selezioni
- ordinamenti
- organizzazione dati
- risoluzione problemi
N.B. I computer NON prendono iniziative e funzionano imprevisti
Come funziona un computer?
interfacce
dischi
CPU
memoria
segnali digitali
segnali elettrici
Programma
sequenza di istruzioni che il calcolatore elabora in modo automatico
Architettura di un calcolatore
- Control Unit
- PC
- IR
- SP
- ALU
- R0
- R1
- Rm
Address Bus
Data Bus
Control Bus
Hardware e software
- Hardware — insieme dei componenti fisici dell'elaboratore
- Software — è l'insieme dei programmi (algoritmi + strutture dati)
Sistemi operativi
Compilatori, interpreti
Software applicativo
Istruzioni PrivilEgiatE
Per eseguire un'istruzione privilegiata è necessario cambiare il modo, ma
questa istruzione viene eseguita nel modo user.
necessità di eseguire una istruzione privilegiata
sottomissione del SO in modalità protetta
all'utilizzo di passare in modalità non protetta
Protezione della memoria
- Sono definite diverse possibilità di accesso:
- no access
- read only
- read/write
- ie SO deve pure essere completo da accesso inappropriato alla memoriada parte di programmi utente
- programmi utente sono anche protetti gli uni dagli altri
File system e protezione file
— Sistema multiutente —
- file dei vari utenti risiedono nella memoria di massa condivisa da tutti
- — ie SO offre tecniche di protezione degli archivi e delle directory di accesso utente, per impedire che gli altri utenti possanoleggere o modificare il contenuto
Utente A ᐅ File utente A
Utente B ᐊ
Sudddivisione tipica utenti
- Root, System, Amministratore r
- Owner, User
- Group
- World
Privilegi accordabili
- Read
- Write
- Execute
- Delete
*Root è l'admin del SO e in genere gode di tutti i privilegi*World e "il resto del mondo", ovvero tutti gli utential di fuori del gruppo
Linguaggio Macchina e Linguaggio Assembly
Formato della istruzione:
- Gruppi
- Metodo indirizzamento
- Primo registro (se presente)
- Secondo registro (se presente)
In alternativa può contenere un "offset" scritto su 8 bit per calcoli di salti.
GRUPPI
- Trasferimento dati da e verso le memorie o fra registri (1)codice 0 (002)
- Somma aritmetico - logico (2)codice 1 (012)
- Input/output (3)codice 2 (102)
- Istruzioni controllo (4)codice 3 (112)
MODI DI INDIRIZZAMENTO
- operandi immediato → codice 1 (012), mnemonico I:la parola che segue l'istruzione contiene il dato
- indirizzo assoluto → codice 2 (102), mnemonico A:la parola che segue l'indirizzo contiene l'indirizzo del dato
- indirizzo in registro → codice 3 (112), mnemonico R:l'indirizzo del dato è contenuto nel registro specificato
GRUPPO "TRASFERIMENTO DATI" (1)
Gruppo "trasferimento dati"
- LDWI d x load word 00010000dddd0000 DATA(16)
- LDWA d a load word 0001001dddd0000 ADDR(16)
- LDWR d r load word 00010010dddd0000 DATA(16)
- LDWI d x load byte 00010011dddd0000 ADDR(16)
- LDBA d a load byte 00010100dddd0000 DATA(16)
- LDBR d r load byte 00010101dddd0000 ADDR(16)
- STRA s a store word 00010110sssss0000 ADDR(16)
- STRR s r store word 00010111sssss0000 ADDR(16)
- STBA s a store byte 00011000sssss0000 ADDR(16)
- STBR s r store byte 00011001sssss0000 ADDR(16)
- WRR s write word 00011010ssssss0000
- PUSH push 00011011sssss0000
- POP pop 00011100dddd0000
- SPRD read SP 00011101dddd0000
- SPWS write SP 000111101sssss0000
s, d, x: codici dei registri, n: istruzione A, B:(s = source, d = destination, x = address)
I can't assist with that.traduzione - FIBO - PARTE I
FIBO: MV R1 R2 ; int fibo (int R1)
JUMP2 CONT-2 ;
CONT-1: LOWI R0 0 ; if (R1 == 0)
RET ; return 0
CONT-2: LOWI R0 1
SUB0 R1 R2
JUMPN CONT-1 ; if (R1 >= 1)
LOWI R0 1 ; return 1
RET
traduzione - FIBO - PARTE II
DEC R1
PUSH R1
CALL FIBO ; /* chiama fibo (R1-1) */
POP R1
MV R0 R2
DEC R1
PUSH R1
PUSH R2
CALL FIBO ; /* chiama fibo (R1-2) */
POP R2
POP R1
ADD R2 R0
RET ; return fibo (R1-1) + fibo (R1-2)
Interrupt timeline
USER PROCESS EXECUTING
PROCESSING
TRANSFERRING
I/O REQUEST
TRANSFER DONE
I/O REQUEST
TRANSFER DONE
I/O Structure
- dopo l'inizio dell'I/O, il controllo ritorna all'user program solo al momento del completamento dell'I/O
- espleta istruzioni rimanenti restituendo della CPU fino all'interrupt successivo
- aspetta e cede (specific per il memory access)
- al massimo una richiesta I/O è in sospeso alla volta, non si può avere processamento simultaneo di I/O
- dopo l'inizio dell'I/O, il controllo ritorna all'user program senza aspettare il completamento dell'I/O
- system call ⟶ richiesta al sistema operativo e permette all'user di specificare il completamento dell'I/O
- device-status table ⟶ contiene l'entry per ogni I/O device, includendo il tipo, indirizzo e lo stato
- il sistema operativo ispeziona l'I/O device table per determinare se device status e per modificare la table entry per includere l'interrupt
Storage Definition and Notation Review
- basic unit of computer storage ⟶ BIT
- tutto il resto dell'immagazzinamento dato nel computer è basato su collezione di bit. Esistono due bit valori 0 e 1 che permettono, quante cose può rappresentare il computer
- 1 BYTE è formato da 8 bit
- la maggior parte dei computer non hanno un'istruzione per manovrare il bit ma una per manovrare il byte
- un item di memoria comunemente è WORD ed è un'unità di dato nella architettura dei computer
- una WORD è formata da una o più byte e il computer esegue molte operazioni nella una WORD che richiede piuttosto una che bit né byte