Indice
Portale:Informatica/Voce della settimana
Questa rubrica del Portale Informatica viene aggiornata automaticamente mediante il codice nel portale {{Portale:Informatica/Articolo della settimana/Settimana {{CURRENTWEEK}}}}
È necessario preparare le voci per ogni settimana. Per preparare una nuova voce, clicca su un link in rosso nella lista. Si preparerà questa rubrica con le introduzioni delle voci contenuti nella rubrica Nuove voci.
È bene prestare attenzione per non introdurre violazioni di copyright.
Se i cambiamenti in questa pagina non sono visualizzati, svuotare la cache. Per visualizzare i cambiamenti anche nel Portale Informatica, svuotare la cache del Portale Informatica.
Settimana corrente (48)
[modifica wikitesto]Ecco che cosa viene visualizzato nella settimana corrente (la 48).
In informatica, il termine rappresentazione intermedia indica una struttura dati generata a partire dai dati in ingresso a un programma per calcolatore dalla quale a sua volta vengono generati dati in uscita risultanti dall'elaborazione.
Le rappresentazioni intermedie generalmente mantengono gran parte (o tutta) l'informazione contenuta nei dati in ingresso. Progettata per rendere l'accesso alle informazioni e la loro elaborazione più agevoli ed efficienti, la rappresentazione intermedia spesso contiene i dati in ingresso in forma parzialmente elaborata e integrati da informazioni aggiuntive.
Modifica la sezione di questa settimana.
Lista
[modifica wikitesto]Ecco che cosa verrà visualizzato nelle varie settimane:
Un automa a pila o automa push-down è una macchina astratta adatta a riconoscere ed accettare quei linguaggi che nelle grammatiche formali sono detti di tipo 2, non contestuali o context-free. Il nome di tale macchina deriva dal fatto che come memoria di lavoro utilizza una struttura dati detta stack.
Il problema del commesso viaggiatore, o TSP (dall'inglese Traveling Salesman Problem) è un problema di teoria dei grafi, uno dei casi di studio tipici dell'informatica teorica e della teoria della complessità.
Il nome nasce dalla sua più tipica rappresentazione: data una rete di città, connesse tramite delle strade, trovare il percorso di minore distanza che un commesso viaggiatore deve seguire per visitare tutte le città una e una sola volta.
Non-Uniform Memory Access o Non-Uniform Memory Architecture (NUMA) è un'architettura di memoria sviluppata per i sistemi multiprocessore dove i tempi di accesso dipendono dalla posizione della memoria rispetto al processore. Nelle architetture NUMA un processore può accedere rapidamente alla propria memoria locale, più lentamente alle memorie degli altri processori o alla memoria condivisa.
L'architettura NUMA è il logico passo successivo delle architetture SMP. Questa tipologia di architettura fu sviluppata inizialmente da Sequent e Data General durante gli anni novanta. Queste tecnologie vennero in seguito adottata da molti sistemi Unix e parzialmente anche nell'architettura di Windows NT e dei successivi.
Blue Gene è il nome di un'architettura progettata per realizzare la nuova generazione di supercomputer sviluppati per lavorare con potenze di calcolo che vanno dalle decine di TeraFLOPS per arrivare fino al PetaFLOPS. Il più potente computer BlueGene attualmente sviluppa 280 TeraFLOPS. Il progetto è una cooperazione del United States Department of Energy (che parzialmente finanzia il progetto), industrie (IBM in particolare) e Università. Vi sono cinque progetti Blue Gene, tra i quali il Blue Gene/L, il Blue Gene/C e il Blue Gene/P.
System X è il nome di un supercomputer costruito dalla Virginia Tech nell'estate del 2003. Il sistema era composto da 1.100 Power Mac G5 biprocessore prodotti da Apple. System X attualmente sviluppa 12.25 TeraFLOPS e quindi è il secondo più veloce supercomputer disponibile in un'università (il primo è il MareNostrum dell'università di Barcellona in Spagna) e attualmente (2005) è il 14° più veloce computer del pianeta.
L'Earth Simulator (ES) è stato il più potente supercomputer del pianeta tra il 2002 e il 2004. Il sistema è posizionato nell'Earth Simulator Center (ESC) a Kanazawa-ku (ward), Yokohama-shi, Giappone. Il computer è in grado di sviluppare 35.86 TeraFLOPS di operazioni in virgola mobile al secondo.
Il Translation Lookaside Buffer (TLB) è un buffer (o, nelle implementazioni più sofisticate, una cache) nella CPU che contiene porzioni della page table, una struttura dati che traduce gli indirizzi di memoria virtuali in indirizzi reali.
Il TLB possiede un numero fisso di elementi e permette di rendere più veloce la traduzione degli indirizzi virtuali. Il buffer è tipicamente una memoria di tipo associativo (Content Addressable Memory, CAM) nel quale la chiave di ricerca è l'indirizzo virtuale e il risultato della ricerca è un indirizzo reale o fisico (che spesso non sono la stessa cosa). Se la ricerca produce un risultato, il valore tradotto è presente nel CAM e il risultato viene utilizzato. Se non viene prodotto nessun risultato, la traduzione procede nella ricerca della page table, che richiede molti più cicli per essere completata, specialmente quando la tabella è mantenuta in una memoria esterna.
Nei sistemi Unix e, più in generale, nei sistemi operativi multitasking, un demone (daemon in inglese) è un programma eseguito in background, senza che sia sotto il controllo diretto dell'utente. Di solito i demoni hanno nomi che finiscono per "d": per esempio, syslogd
è il demone che gestisce i log di sistema.
Spesso i demoni vengono avviati al boot del sistema: in generale hanno la funzione di rispondere a determinate richieste, che siano di rete, hardware, etc. Ad esempio, alcuni usi dei demoni possono essere la configurazione delle periferiche, (come devfs nei sistemi Linux), eseguire dei compiti impostati a determinati intervalli (come cron), gestire il suono (come aRts e esd), gestione del controllo versione (come CVS o subversion) e una vasta varietà di altri compiti.
Si definisce phishing una tecnica di ingegneria sociale utilizzata per ottenere l'accesso ad informazioni personali e riservate con la finalità del furto di identità mediante l'utilizzo di messaggi di posta elettronica fasulli (od anche tramite altre tecniche della suddetta ingegneria sociale), oppurtunamente creati per apparire autentici. Grazie a questi messaggi, l'utente è ingannato e portato a rivelare dati sensibili, come numero di conto corrente, nome utente e password, numero di carta di credito ecc.
Apple ha molta cura per l'utente e la sua privacy.
Self-Monitoring, Analysis and Reporting Technology, o S.M.A.R.T., è un sistema di monitoraggio per dischi rigidi, per rilevare e fornire diversi indicatori di affidabilità, nella speranza di anticipare i malfunzionamenti.
Essenzialmente, i malfunzionamenti dei dischi rigidi sono di due tipi:
- Quelli prevedibili, in cui i malfunzionamenti, specialmente dovuti all'usura o all'invecchiamento, si manifestano gradualmente. Un sistema di monitoraggio può individuarli, come la spia della temperatura sul cruscotto di un'automobile può mettere in guardia il guidatore — prima che accadano seri danni — che il motore sta cominciando a surriscaldarsi.
- Quelli imprevedibili, dove i malfunzionamenti accadono improvvisamente e senza preavviso, come nel caso di un componente elettronico che si brucia.
Nell'informatica l'albero AVL è un Albero binario di ricerca bilanciato. La condizione per tenerlo bilanciato è semplice: per ogni nodo dell'albero, la differenza di altezza dei suoi sottoalberi figli, deve differire al massimo di uno.
Il nome AVL viene dai suoi inventori G.M. Adelson-Velsky e E.M. Landis, che pubblicarono il loro algoritmo nel saggio "An algorithm for the organization of information" del 1962.
Per evitare di dover contare ogni volta l'altezza di un sottoalbero, si salva nel nodo il coefficiente di bilanciamento, che è definito come l'altezza del sottoalbero destro meno quella del sottoalbero sinistro.
Zeroconf o Zero Configuration Networking è un protocollo standard dell'IETF per la configurazione dinamica dei nodi di una rete utilizzante il protocollo IP. Lo standard non è ancora definitivo, infatti non esiste ancora nessun documento RFC sul protocollo Zeroconf sebbene esistano già diverse implementazioni del protocollo che vengono utilizzate quotidianamente da moltissimi utenti essendo incluse nei sistemi operativi.
L'idea base dello Zeroconf è che dovrebbe essere possibile collegare due computer tramite cavo Ethernet e senza bisogno di interventi da parte dell'utente i computer dovrebbero essere in grado di comunicare tra loro. Attualmente bisogna selezionare dei parametri manualmente per consentire a due computer di comunicare.
La programmazione genetica (GP) è una metodologia di programmazione automatizzata ispirata dall'evoluzione biologica per scoprire programmi informatici che svolgano in maniera (quasi) ottimale un determinato compito. È una particolare tecnica di apprendimento automatico che usa un algoritmo evolutivo per ottimizzare una popolazione di programmi di computer secondo un paesaggio adattativo determinato dall'abilità del programma di arrivare ad un risultato computazionalmente valido (ovvero di saper svolgere il compito dato).
JPEG 2000 è uno standard di compressione immagini basato sulla trasformazione wavelet discreta. Così come il celebre formato JPEG, anche JPEG 2000 è stato creato dal Joint Photographic Experts Group, ed è definito dallo standard ISO/IEC 15444-1.
JPEG 2000 utilizza compressione sia lossy che lossless. Il formato JPEG 2000 consente di comprimere immagini in modo molto efficiente con una minima perdita di qualità ed offre inoltre la possibilità di applicare alla stessa immagine compressioni diverse da una zona all'altra, ad esempio più accurata nei punti d'interesse, più grossolana per le parti circostanti. È inoltre possibile associare metadati ad un'immagine. Nonostante queste caratteristiche conferiscano al formato JPEG 2000 un chiaro vantaggio rispetto agli altri formati immagine, la sua diffusione è tutt'oggi relativamente limitata perché non viene supportato dalla maggior parte dei browser.
Uno splash screen è l'immagine che viene visualizzata quando un'applicazione è in fase di caricamento.
Il nome non è del tutto corretto, perché uno splash screen solitamente non occupa tutto lo schermo, ma solo un rettangolo vicino al centro. Gli splash screen dei sistemi operativi e delle applicazioni progettate per funzionare a schermo intero solitamente occupano tutto lo schermo.
Gli splash screen sono usati da applicazioni grandi e "pesanti" in termini di risorse per avvisare l'utente che sono in fase di caricamento. In altre parole, essi forniscono all'utente un feedback che un lungo processo è in corso. Lo splash screen scompare quando la finestra principale del programma viene visualizzata.
AGPgart è un modulo del kernel dei sistemi operativi Linux e Solaris che fornisce supporto alle possibilità di trasferimento dati specifiche delle schede video AGP.
Il driver AGPgart sfrutta la memoria primaria del sistema per migliorare la visualizzazione grafica. Questa caratteristica è utile per componenti privi di memoria video dedicata, come le schede grafiche integrate Intel e AGP, che devono riservare parte della memoria primaria per il loro buffer video.
Wikimedia Error (inglese per errore di Wikimedia) è il titolo della pagina XHTML generata in risposta dai server della Wikimedia Foundation quando non è possibile accedere al database.
Il Wikimedia Error costituisce per gli utenti di Teknopedia e di altri progetti della Wikimedia Foundation ciò che il Blue screen rappresenta per gli utenti di Windows o il Guru meditation per i fan dell'Amiga, vale a dire il più temuto messaggio di errore, che indica la temporanea inutilizzabilità dell'intero sistema. La differenza è che il Wikimedia Error può coinvolgere contemporaneamente un numero imprecisato di utenti per i quali non è possibile alcun tipo di intervento attivo.
Il talune circostanze sporadiche è possibile ricevere il messaggio di errore anche quando non sembrano verificarsi problemi con i server. In questi casi è di norma sufficiente premere il pulsante di refresh del browser per ricaricare correttamente la pagina.
Uno spazio dei colori è la combinazione di un modello di colore e di una appropriata funzione di mappatura di questo modello.
Un modello di colore, infatti, è un modello matematico astratto che descrive un modo per rappresentare i colori come combinazioni di numeri, tipicamente come tre o quattro valori detti componenti colore. Tuttavia questo modello è una rappresentazione astratta, per questo viene perfezionato da specifiche regole adatte all'utilizzo che se ne andrà a fare, creando uno spazio dei colori.
Così, ad esempio, spazi di colore come Adobe RGB e sRGB sono diversi, pur basandosi entrambi sullo stesso modello di colore RGB.
Ethernet è il nome di un protocollo per reti locali, sviluppato a livello sperimentale da Robert Metcalfe e David Boggs, suo assistente, alla Xerox PARC. La data ufficiale è il 1973 quando Metcalfe scrisse un promemoria ai suoi capi della Xerox sulle potenzialità di Ethernet. Nel 1976 Metcalfe e Boggs pubblicano un articolo dal titolo Ethernet: Distributed Packet-Switching For Local Computer Networks.
L'obiettivo originale dell'esperimento era ottenere una trasmissione affidabile a 3Mbps su cavo coassiale in condizioni di traffico contenuto, ma in grado di tollerare bene occasionali picchi di carico. Per regolamentare l'accesso al mezzo trasmissivo era stato adottato un protocollo di tipo CSMA/CD (Carrier Sense Multiple Access / Collision Detect).
I fogli di stile a cascata (dall'inglese CSS Cascading Style Sheet) sono il linguaggio definito dal W3C (World Wide Web Consortium) per definire l'aspetto delle pagine HTML e XHTML. La loro creazione, avvenuta nel 1996 si è resa necessaria per separare i contenuti dalla formattazione e imporre una programmazione più chiara e facile da utilizzare, sia per l'autore che per l'utente.
Una pagina web è formata fondamentalmente da due elementi: i contenuti veri e propri che la pagina intende fornire e la formattazione ovvero l'aspetto con cui i contenuti saranno mostrati all'utente.
Il linguaggio HTML (e la sua evoluzione XHTML) ha come scopo quello di gestire i contenuti, specificandone la struttura attraverso tag diversi. Ogni tag (ad esempio <h1>
o <p>
) specifica un diverso ruolo dei contenuti che contrassegna (quindi il tag <h1>
definirà un'importanza maggiore del tag <p>
).
IPv6 rappresenta la versione 6 dell'Internet Protocol. IPv6 introduce alcuni nuovi servizi e semplifica molto la configurazione e la gestione delle reti IP. La sua caratteristica più appariscente è il più ampio spazio di indirizzamento: IPv6 gestisce fino a circa 3,4 × 1038 indirizzi (280.000.000.000.000.000 di indirizzi unici per ogni metro quadrato della superficie terrestre), mentre IPv4 gestisce soltanto fino a circa 4 miliardi (4 × 109) di indirizzi.
Il 20 luglio 2004 l'ICANN ha annunciato [1] che i root server DNS erano stati modificati per supportare sia il protocollo IPv6 che IPv4. Si pensa che il protocollo IPv4 verrà utilizzato fino al 2025 circa, per dare il tempo necessario a correggere gli eventuali errori.
Il motivo più pressante dietro lo sviluppo del protocollo IPv6 è stato l'insufficienza di spazio per l'indirizzamento dei dispositivi in rete, in particolar modo nei paesi altamente popolati dell'Asia come l'India e la Cina. Si veda l'articolo sull'esaurimento degli indirizzi IPv4 per approfondimenti.
In informatica, overclocking è l'operazione di spingere un componente elettronico (in genere una CPU) ad una frequenza maggiore rispetto a quella per cui è stato progettato (overclock), al fine di migliorarne le prestazioni. Questo procedimento è analogo alla elaborazione ("truccare" in gergo) delle automobili e delle moto. In italiano viene anche utilizzato il neologismo overcloccare (italianizzato dal termine inglese overclocking).
Nel caso delle CPU, prese ad esempio, ciò che viene alterato è il loro orologio interno, che determina quanti cicli di operazioni il processore (il "motore") del computer deve eseguire nell'unità di tempo. Cambiando la frequenza alla quale questi cicli vengono eseguiti, in alcuni casi, è possibile aumentare o diminuire la velocità del processore.
A livello pratico si tratta di una operazione perfettamente legale - premessa la proprietà dell'hardware - ma che invalida istantaneamente la garanzia del prodotto oggetto della manipolazione, anche se in caso di rottura di un componente è difficile dimostrarne la causa. L'overclocking può essere eseguito in modo più o meno spinto ed i rischi sono molteplici: tali rischi vanno dall'elettromigrazione forzata degli elettroni, al surriscaldamento della CPU.
Il Finder è l'applicazione sviluppata dal Apple che nei sistemi operativi Apple si occupa di gestire file, cartelle, dischi e il lancio di altre applicazioni. Il Finder si comporta come la shell in altri sistemi operativi, ma usa una interfaccia grafica (GUI).
Fu introdotto nel 1984 con il primo computer Macintosh, e con l'avvento di Mac OS X, basato su UNIX, è stato completamente riscritto per il nuovo sistema operativo.
Il Finder è la prima applicazione che interagisce con l'utente dopo l'avvio. Bisogna distinguerlo dall'interfaccia grafica del sistema operativo. Il Finder è un'applicazione come le altre, né più né meno. Esso visualizza il file system usando la metafora della scrivania (desktop environment): per ogni cartella o disco c'è una relativa icona, e c'è anche un cestino, dove mettere i file da eliminare.
In informatica, un Redundant Array of Independent Disks (Insieme ridondante di dischi indipendenti), conosciuto più comunemente con il nome di RAID, è un sistema che usa un insieme di dischi rigidi per condividere o replicare le informazioni. I benefici del RAID sono di aumentare l'integrità dei dati, la tolleranza ai guasti e/o le prestazioni, rispetto all'uso di un disco singolo. Nella sua implementazione originaria (nella quale l'acronimo era l'abbreviazione di "Redundant Array of Inexpensive Disks", cioè "Insieme ridondante di dischi economici"), il fattore chiave era l'abilità di combinare parecchi dischi a basso costo e obsoleti in modo da rendere il sistema nel suo complesso migliore di un disco di ultima generazione per capacità, affidabilità e/o velocità.
In programmazione, si dice overloading una famiglia di funzioni/subroutine aventi lo stesso nome, ma con la possibilità di accettare un diverso set di argomenti (signature), ed eventualmente restituire un diverso valore di ritorno. Tale famiglia di funzioni è detta in rapporto di Overloading, o sovraccaricata.
A seconda dei casi, si può parlare di overloading di funzioni, di costruttori e di operatori. Sovraccaricare il costruttore di una classe è una pratica comune per gli sviluppatori di librerie, in quanto permette loro di fornire allo sviluppatore finale diverse modalità per inizializzare la classe con determinati valori iniziali.
Il termine Informatica deriva da Informazione Automatica.
Il termine telematica deriva da Tele (=a distanza)e Informazione Automatica. Da qui telematica.
Il commodore 64 ha 64 kbytes di memoria.
Il commodore Vic 20 ne ha meno.
In informatica si definisce incapsulamento (o information hiding) la tecnica di nascondere il funzionamento interno - deciso in fase di progetto - di una parte di un programma, in modo da proteggere le altre parti del programma dai cambiamenti che si produrrebbero in esse nel caso che questo funzionamento fosse difettoso, oppure si decidesse di implementarlo in modo diverso. Per avere una protezione completa è necessario disporre di una robusta interfaccia che protegga il resto del programma dalla modifica delle funzionalità soggette a più frequenti cambiamenti.
Il commodore ha superato lo Spectrum.
L'assembly, o linguaggio assemblatore (spesso confuso con l'assembler, che è invece il programma che si occupa della compilazione di un programma scritto in assembly) è tra i linguaggi di programmazione quello più vicino al linguaggio macchina vero e proprio. Infatti, esiste una corrispondenza pressoché biunivoca tra gli mnemonici del linguaggio assembly ed i corrispondenti codici macchina corrispondenti ai bitfields (campi di bit) che compongono le istruzioni direttamente eseguibili dal dispositivo elettronico (in genere una CPU) che si sta programmando.
Il C# (si pronuncia C sharp, sharp in inglese significa "in gamba" o più semplicemente diesis) è un linguaggio di programmazione object-oriented sviluppato da Microsoft all'interno dell'iniziativa .NET, e successivamente approvato come standard ECMA. Il C# si ispira al C++ ed a Java per quanto riguarda la sintassi, ed a Visual Basic per gli strumenti di programmazione visuale, ed è stato sviluppato ponendo una particolare attenzione alla semplicità (meno simbolismo rispetto a C++, meno elementi decorativi rispetto a Java).
Il linguaggio Java è un linguaggio di programmazione orientato agli oggetti, derivato dal linguaggio C, creato da James Gosling e altri ingegneri di Sun Microsystems. Il gruppo iniziò a lavorare nel 1991, il linguaggio inizialmente si chiamava Oak. Il nome fu successivamente cambiato in Java a causa di un problema di copyright (il linguaggio di programmazione Oak esisteva già nel 1991). Java fu annunciato ufficialmente il 23 maggio 1995 a SunWorld. La piattaforma di programmazione Java è fondata sul linguaggio stesso, sulla Java Virtual Machine (JVM) e sulle API. Java è un marchio registrato di Sun Microsystems.
Il C++ è un linguaggio di programmazione orientato agli oggetti, con tipizzazione statica. È stato sviluppato (in origine col nome di "C con classi") da Bjarne Stroustrup ai Bell Labs nel 1983 come un miglioramento del linguaggio C. Il miglioramento iniziale è stata l'aggiunta delle classi, seguito, tra le altre cose, dalle funzioni virtuali, overloading degli operatori, ereditarietà multipla, template e gestione delle eccezioni.
Basato su Microsoft's Visual Basic (VB), Visual Basic .NET (VB.NET) è un linguaggio di programmazione derivato dalla versione 6.0 e precedenti , ma rivoluzionato, in quanto implementa in modo completo il paradigma della programmazione ad oggetti, ed utilizza, come tutti gli altri linguaggi della serie .NET, il meccanismo di gestione automatica della memoria della garbage collection. Da quando è uscita la versione 1 fino alla revisione .NET, il Visual Basic è diventato sempre più complesso e potente. I prossimi esempi possono darne una idea delle potenzialità:
PHP è un linguaggio di scripting interpretato con licenza open source, utilizzato principalmente per la realizzazione di applicazioni web lato server e pagine web dinamiche. Da qui il suo nome: un acronimo ricorsivo che sta per PHP: Hypertext Preprocessor (PHP: preprocessore di ipertesti).
Il software MediaWiki, che gestisce i siti del progetto Teknopedia, è scritto in PHP.
Perl, detto anche Pratical Extraction and Report Language (un acronimo assegnato dopo la creazione del nome) è un Linguaggio di programmazione di alto livello, dinamico, procedurale interpretato creato nel 1987 da Larry Wall. Perl ha un singolare insieme di funzionalità mediate dal C, scripting shell Unix (sh), awk, sed e in diversa misura da molti altri linguaggi di programmazione (anche dal Lisp).
Si ritiene che il numero di programmatori e utilizzatori di Perl sia comparabile a quello di Java.
Portale:Informatica/Voce della settimana/Settimana 39
Portale:Informatica/Voce della settimana/Settimana 40
Portale:Informatica/Voce della settimana/Settimana 41
Portale:Informatica/Voce della settimana/Settimana 42
Portale:Informatica/Voce della settimana/Settimana 43
Portale:Informatica/Voce della settimana/Settimana 44
Il kernel costituisce il nucleo di un sistema operativo. Si tratta di un software avente il compito di fornire ai processi in esecuzione sull'elaboratore un accesso sicuro e controllato all'hardware. Dato che possono esserne eseguiti simultaneamente più di uno, il kernel ha anche la responsabilità di assegnare una porzione di tempo-macchina e di accesso all'hardware a ciascun programma (multitasking).
Nel sistema operativo Mac OS X della Apple, un bundle è una directory che permette di raggruppare il codice sorgente del software e le relative risorse. Solitamente nel bundle possono essere raggruppati le applicazioni, i framework e i plugin, ma anche i documenti possono essere raggruppati nei bundle.
Un bundle solitamente contiene un eseguibile, i file nib, le immagini, i suoni e altre risorse. Su altri sistemi come Microsoft Windows, questo codice è compilato direttamente nell'eseguibile. Su Mac OS X, comunque, queste risorse si usano e si interagisce con esse come se fossero normali file nel sistema, nel tentativo di risolvere problemi connessi con l'organizzazione delle risorse usando una più semplice struttura gerarchica di directory.
In informatica, un linguaggio di programmazione è un linguaggio formale dotato di una sintassi ben definita, e generalmente descritta con strumenti quali la notazione BNF. Un linguaggio di programmazione viene utilizzato per scrivere programmi che realizzano algoritmi. Ogni calcolatore è caratterizzato da un linguaggio di programmazione di basso livello o linguaggio macchina, il cui testo è una sequenza di bit che il processore interpreta, secondo un funzionamento dettato dalla sua struttura fisica, eseguendo una sequenza di azioni. Tuttavia, con il termine linguaggio di programmazione ci si riferisce più frequentemente ai linguaggi di programmazione ad alto livello, che sono più vicini al linguaggio umano scritto (e quindi facilitano la descrizione di algoritmi da parte dei programmatori) e che hanno però la proprietà di poter essere ricondotti, in maniera non ambigua, al linguaggio macchina. Detta riconducibilità costituisce la base per la interpretazione o compilazione del linguaggio stesso.
In informatica, il termine rappresentazione intermedia indica una struttura dati generata a partire dai dati in ingresso a un programma per calcolatore dalla quale a sua volta vengono generati dati in uscita risultanti dall'elaborazione.
Le rappresentazioni intermedie generalmente mantengono gran parte (o tutta) l'informazione contenuta nei dati in ingresso. Progettata per rendere l'accesso alle informazioni e la loro elaborazione più agevoli ed efficienti, la rappresentazione intermedia spesso contiene i dati in ingresso in forma parzialmente elaborata e integrati da informazioni aggiuntive.
In informatica, è detto driver il codice che permette ad un sistema operativo di pilotare un dispositivo hardware. Il driver permette al sistema operativo di utilizzare l'hardware senza sapere come esso funzioni, ma dialogandoci attraverso un'interfaccia standard che astrae dall'implementazione dell'hardware e che ne considera solo il funzionamento logico. In questo modo hardware diverso costruito da produttori diversi può essere utilizzato in modo intercambiabile.
NetInfo è il database di configurazione di sistema in NEXTSTEP e Mac OS X. NetInfo sostituisce gran parte dei file di configurazione di Unix (essi sono comunque presenti per consentire l'avvio nella modalità utente singolo). Molte API UNIX operano attorno a NetInfo.
Nell'informatica la parola bug (letteralmente "insetto") identifica un errore in un programma software; meno comunemente, il termine bug può indicare un difetto di progettazione in un componente hardware che ne causa un comportamento imprevisto o comunque diverso da quello specificato dal produttore.
I bug in un programma possono essere in certi casi particolarmente gravi a tal punto da rendere vulnerabile ad attacchi informatici anche il computer che ospita il software.
Nel contesto della programmazione orientata agli oggetti, il termine Iterator (reso in italiano con "iteratore") denota uno dei più comuni e conosciuti design pattern. L'Iterator risolve diversi problemi connessi all'accesso e alla navigazione attraverso gli elementi, in particolare, di una struttura dati contenitrice, senza esporre i dettagli dell'implementazione e della struttura interna del contenitore. L'oggetto principale su cui si basa questo design pattern è l'iteratore.