Piattaforma (informatica): differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m sistemazione fonti e fix vari |
m Refusi |
||
Riga 20:
L'idea alla base di una piattaforma è l'[[Astrazione (informatica)|astrazione]] e la semplificazione.
Questa semplificazione può essere ottenuta fornendo allo sviluppatore dell'applicazione un modello funzionale che sia un'astrazione selettiva di funzionalità più concrete, realizzato in genere sottoforma di un'interfaccia di programmazione dell'applicazione ([[application programming interface|API]]), in cui è annidata la funzionalità sottostante. Per l'applicazione risultante, questa assume tipicamente la forma di un ambiente di ''[[runtime]]'' interpretato dinamicamente (ad esempio: [[Java
Una qualità che questi livelli di astrazione possono offrire è l'universalità, solitamente definita come [[compatibilità tecnica]]. Questa può riferirsi all'ampiezza, cioè alla quantità di dettagli diversi astratti, così come alla permanenza della piattaforma nel tempo. La compatibilità nel tempo può significare la garanzia di una compatibilità verso il basso quando una piattaforma viene ulteriormente sviluppata o la garanzia da parte del produttore che i nuovi “dettagli” astraibili (quali nuovi [[sistema operativo|sistemi operativi]], nuovo [[hardware]]) saranno integrati nella piattaforma non appena siano emersi (compatibilità verso l'alto).
Riga 32:
Una piattaforma per l'architettura di un processore utilizza un [[linguaggio macchina]] standardizzato, [[Parola (informatica)|parole]] di grandi dimensioni, un [[ordine dei byte]]. Un esempio di largo utilizzo è l'architettura dell'[[x86]].
Tuttavia, il modo in cui i singoli [[Instruction set|comandi]] di questo linguaggio macchina vengono elaborati internamente al microprocessore (ad esempio con [[Micro operazioni|Micro-op]]) può variare notevolmente all'interno della stessa piattaforma. Solo i risultati finali che i comandi forniscono rimangono invariati.
Le piattaforme hardware possono essere grossolanamente classificate in architetture [[CISC]] e [[RISC]]. Tuttavia, i confini tra questi due tipi di architettura stanno diventando sempre più labili nelle attuali architetture dei processori.
Riga 57:
Ad esempio, l'azienda [[Apple]] si pubblicizza con la piattaforma “Macintosh” o “Mac”, anche se praticamente tutte le piattaforme che compongono Macintosh sono state sostituite (talora ripetutamente) nel corso dell'intero periodo della sua esistenza. Da un punto di vista tecnico, Macintosh è costituito e consisteva in piattaforme hardware e software molto diverse e talvolta incompatibili tra loro.
Infatti, nel corso della sua storia, il “Macintosh” ha utilizzato o utilizza [[680x0]], [[PowerPC]], [[IA-32]] o [[x64]] e [[ARM64]] dal punto di vista dell'architettura del processore. Le [[interfaccia (
Lo stesso vale per il marchio [[Windows]] spinto dalla [[Microsoft]]. Sebbene i cambiamenti non siano mai stati così estesi come nel caso del Macintosh, nemmeno Windows è una piattaforma standardizzata. Infatti, utilizza le piattaforme [[x86]] -[[IA-32]] e [[x64]]- e [[Architettura ARM|ARM]], in passato anche [[Architettura MIPS|MIPS]], [[POWER]] o [[PowerPC]], [[DEC Alpha|Alpha]] e [[Itanium]], e ha fornito o fornisce le applicazioni [[DOS]], [[Win16]], [[Win32]], [[Win64]], [[Native API]], [[Windows CE]], [[.NET]], [[POSIX]], [[OS/2]] e altre). Ad esempio, le API di Win32 e Windows CE sono compatibili solo in misura molto limitata. Tutti i prodotti Windows basati sul [[kernel]] DOS o Windows NT contengono diverse piattaforme, il che ha portato alla retrocompatibilità delle applicazioni fino a 30 anni in alcuni casi (come nel caso di Win16).
Riga 74:
* [[AmigaOS]] ([[AROS]], [[MorphOS]])
* [[Android|Android Runtime]]
* [[
* [[Blackberry]]
* [[Carbon (API)|Carbon]] ([[Mac OS|Mac OS (Classic)]], [[macOS]])
Riga 85:
* [[OS/400]]
* [[Palm OS]]
* [[POSIX|Portable Operating System Interface]], POSIX (Unix/BSD, macOS, Linux, Windows NT, …)
* [[Single UNIX Specification]], SUS ([[Unix]], macOS)
* [[Symbian]]
* [[Windows API|Windows Application Programming Interface]]: Win16, Win32, Win64 ([[Microsoft Windows|Windows]], [[Windows CE]], [[WinOS/2]], [[ReactOS]], [[Wine]], …)
* [[z/OS]]
* [[VM/CMS|z/VM]]
===Hardware===
* [[AMD]] [[
* [[Architettura ARM
* [[Atmel]] [[Atmel AVR|AVR]]
* [[Digital Equipment Corporation|DEC]] [[DEC Alpha
* [[IBM]] [[IBM 801|801]]
* IBM [[System/360]]
* IBM [[System/390]] (indirizzamento a 31
* IBM [[IBM Z|System z]] (
* [[Intel]] [[Intel 4004|4004]] (
* Intel [[Intel 4040|4040]] (larghezza dei dati a 4 bit con bus dati a 4 bit, spazio indirizzi a 13 bit con bus indirizzi a 4 bit, 1974)
* Intel [[Intel 8008|8008]] (larghezza dei dati a 8 bit con bus dati a 8 bit, spazio indirizzi a 14 bit con bus indirizzi a 8 bit, 1972)
* Intel [[Intel 8080|8080]] (larghezza dei dati a 8 bit con bus dati a 8 bit, spazio indirizzi a 16 bit con bus indirizzi a 16 bit, 1974)
* Intel [[Architettura x86
** [[Intel 8086|8086]]/[[Intel 8088|8088]], [[Intel 80186|80186]]/[[Intel 80188|80188]], [[Zilog Z80|Z80]]
** [[Intel 80286|80286]] (parole a 16
** [[Intel 80386|80386]] (parole a 32
** [[IA-32]]
** [[x64]]
** numerose estensioni del set di comandi per IA-32 e x64, si veda<!-- in ordine alfabetico: --> [[Advanced Vector
* Intel [[Intel i960|i960]]
* Intel Itanium [[IA-64]] (larghezza dati a 64 bit, spazio indirizzi a 64 bit, non compatibile con IA-32 e 16-Bit x86)
* [[Architettura MIPS
* [[Motorola]] [[
** [[Motorola 6800|6800]]
** [[Motorola 68000|68000]]
** [[Motorola 68008|68008]] (Motorola, bus dati a 8 bit, bus indirizzi a 20 bit)
** [[Motorola 68012|68012]] (Motorola, bus dati a 16 bit, bus indirizzi a 32 bit)
** [[Motorola 68020|68020]] e [[Motorola 68330|68330]] (Motorola, bus dati a 32 bit, bus indirizzi a 32
** [[Motorola 68030|68030]], [[Motorola 68040|68040]] e [[Motorola 68060|68060]] (Motorola, bus dati a 32
** [[Freescale ColdFire|ColdFire]] (Freescale, 68060-Design, dal 2004)
** [[
* Motorola [[Motorola
* [[OpenRISC]]
* [[PDP-1]], [[PDP-4]], [[PDP-7]], PDP-9 e PDP-15 (18
* PDP-5, [[PDP-8]], PDP-12, PDP-14 e PDP-16 (12
* PDP-6
* [[PDP-11]] (16
* [[PA-RISC]]
* Power
** [[IBM Power Systems|IBM Power]] (originariamente scritto POWER)
** IBM e Motorola (dal 2004 [[Freescale Semiconductor|Freescale]], dal 2015 [[NXP Semiconductors|NXP]]) [[PowerPC]]
* [[SPARC]]
* [[SuperH]]
* [[Virtual Address eXtension|VAX]] (32
== Note ==
|