Indice
46 relazioni: Albero (informatica), Allocazione automatica della memoria, Allocazione dinamica della memoria, Allocazione statica della memoria, Buddy memory allocation, C (linguaggio di programmazione), Call stack, Chiamata di sistema, Chunk (informatica), Divisione per due, Donald Knuth, Esecuzione (informatica), Frammentazione (informatica), Funzione (informatica), Garbage collection, Gergo, Heap (struttura dati), Incapsulamento (informatica), Informatica, Istruzione (informatica), Java (linguaggio di programmazione), Kernel, LIFO, Lingua inglese, Linguaggio macchina, Linux, Lista concatenata, Macchina virtuale Java, Malloc, Memoria (informatica), Metadato, Oggetto (informatica), Oracle Corporation, Paginazione, Pila (informatica), Potenza di due, Processo (informatica), Programma (informatica), Programmatore, Run-time, Sistema embedded, Sistema informatico, Sistema operativo, SLOB, Stack frame, Unix.
Albero (informatica)
In informatica, un albero o struttura ad albero (tree in inglese) è la struttura dati che si riconduce al concetto di albero con radice presente nella teoria dei grafi.
Vedere Allocazione dinamica della memoria e Albero (informatica)
Allocazione automatica della memoria
Le variabili automatiche sono variabili locali in un blocco di istruzioni. Esse sono automaticamente allocate sullo stack quando si entra in quel blocco di codice; parallelamente, vengono distrutte quando si esce dal blocco stesso.
Vedere Allocazione dinamica della memoria e Allocazione automatica della memoria
Allocazione dinamica della memoria
Con allocazione dinamica della memoria, in informatica, si intende l'allocazione di memoria per l'utilizzo di un programma durante la propria esecuzione.
Vedere Allocazione dinamica della memoria e Allocazione dinamica della memoria
Allocazione statica della memoria
In informatica, con allocazione statica della memoria si intende l'allocazione di memoria per l'utilizzo di un programma durante la sua compilazione, diversamente per quanto accade con la memoria allocata dinamicamente o automaticamente, che invece viene resa disponibile a runtime.
Vedere Allocazione dinamica della memoria e Allocazione statica della memoria
Buddy memory allocation
Il Buddy System o buddy memory allocation è una tecnica di allocazione dinamica della memoria che divide la memoria in partizioni per soddisfare una richiesta di memoria nel miglior modo possibile.
Vedere Allocazione dinamica della memoria e Buddy memory allocation
C (linguaggio di programmazione)
C (AFI) è un linguaggio di programmazione ad uso generale di natura imperativa e procedurale creato da Dennis Ritchie negli anni '70. Tutt'oggi influente, è largamente adoperato nei sistemi operativi, nei driver e nelle pile di protocolli, mentre è in diminuzione il suo uso nelle applicazioni.
Vedere Allocazione dinamica della memoria e C (linguaggio di programmazione)
Call stack
In informatica, un call stack (traducibile letteralmente dall'inglese come "pila delle chiamate") è una zona di memoria di un programma, organizzata in forma di stack, nella quale sono immagazzinate le informazioni sulle subroutine attive in un dato momento (le subroutine attive sono quelle che sono state invocate ma la cui esecuzione non è terminata).
Vedere Allocazione dinamica della memoria e Call stack
Chiamata di sistema
Una chiamata di sistema, in informatica, indica il meccanismo usato da un processo a livello utente o livello applicativo, per richiedere un servizio a livello kernel del sistema operativo del computer in uso.
Vedere Allocazione dinamica della memoria e Chiamata di sistema
Chunk (informatica)
Un chunk è un blocco di memoria residente nello heap.
Vedere Allocazione dinamica della memoria e Chunk (informatica)
Divisione per due
In matematica, la divisione per due o a metà è stata considerata un'operazione diversa dalla moltiplicazione o divisione per altri numeri fino dai tempi degli antichi egizi, che utilizzavano una tecnica di moltiplicazione che adottava la divisione per due come uno degli elementi fondamentali.
Vedere Allocazione dinamica della memoria e Divisione per due
Donald Knuth
Rinomato studioso di matematica (soprattutto di conoscenze che ora sono confluite nell'informatica), è professore emerito presso la Stanford University.
Vedere Allocazione dinamica della memoria e Donald Knuth
Esecuzione (informatica)
Con esecuzione, in informatica, si indica il processo tramite il quale un sistema di elaborazione (computer o macchina virtuale) esegue (elabora) le istruzioni di un programma, seguendone il flusso di esecuzione specificato nel rispettivo codice sorgente, dopo le fasi di compilazione/interpretazione e linking.
Vedere Allocazione dinamica della memoria e Esecuzione (informatica)
Frammentazione (informatica)
In informatica e telecomunicazioni la frammentazione indica il processo di suddivisione di una sequenza di dati in più parti, al fine di memorizzarli su apposito supporto di memorizzazione o di trasmetterli in rete.
Vedere Allocazione dinamica della memoria e Frammentazione (informatica)
Funzione (informatica)
In informatica e in particolare nella programmazione, una funzione è un'unità di organizzazione del codice che permette di raggruppare una sequenza di istruzioni in un unico blocco, caratterizzato da un nome, dei parametri in ingresso (detti argomenti) e uno o più dati restituiti in uscita.
Vedere Allocazione dinamica della memoria e Funzione (informatica)
Garbage collection
In informatica per garbage collection (GC) si intende una modalità automatica di gestione della memoria, mediante la quale un sistema operativo, o un compilatore e un modulo di run-time liberano porzioni di memoria non più utilizzate dalle applicazioni.
Vedere Allocazione dinamica della memoria e Garbage collection
Gergo
Gergo (per certi versi analogo a slang, in inglese, e ad argot, in francese) è un termine usato per definire delle varietà di lingua che vengono utilizzate da specifici gruppi di persone e che si sono sensibilmente allontanate dalla lingua o dal dialetto parlato di norma in zona.
Vedere Allocazione dinamica della memoria e Gergo
Heap (struttura dati)
In informatica, un heap è una struttura dati basata sugli alberi che soddisfa la "proprietà di heap": se A è un genitore di B, allora la chiave (il valore) di A è ordinata rispetto alla chiave di B conformemente alla relazione d'ordine applicata all'intero heap.
Vedere Allocazione dinamica della memoria e Heap (struttura dati)
Incapsulamento (informatica)
Nei linguaggi di programmazione orientata agli oggetti, il termine incapsulamento può essere usato per riferirsi a due concetti, collegati tra loro ma distinti o, a volte, alla combinazione dei due.
Vedere Allocazione dinamica della memoria e Incapsulamento (informatica)
Informatica
Linformatica è la scienza o disciplina che si occupa del trattamento dell'informazione mediante procedure automatizzate, avendo in particolare per oggetto lo studio dei fondamenti teorici dell'informazione, della sua computazione a livello logico e delle tecniche pratiche per la sua implementazione e applicazione in sistemi elettronici automatizzati detti quindi sistemi informatici; come tale è una disciplina fortemente connessa con la logica matematica, l'automatica, l'elettronica e anche l'elettromeccanica.
Vedere Allocazione dinamica della memoria e Informatica
Istruzione (informatica)
In informatica una istruzione è un comando impartito ad un esecutore (può essere il processore, ma anche il compilatore o il linker) in un sistema, utilizzando un linguaggio ad esso comprensibile.
Vedere Allocazione dinamica della memoria e Istruzione (informatica)
Java (linguaggio di programmazione)
In informatica Java è un linguaggio di programmazione ad alto livello, orientato agli oggetti e a tipizzazione statica, che si appoggia sull'omonima piattaforma software di esecuzione, specificamente progettato per essere il più possibile indipendente dalla piattaforma hardware di esecuzione (tramite compilazione in bytecode prima e interpretazione poi da parte di una JVM) (sebbene questa caratteristica comporti prestazioni in termini di computazione inferiori a quelle di linguaggi direttamente compilati come C e C++ ovvero dunque perfettamente adattati alla piattaforma hardware).
Vedere Allocazione dinamica della memoria e Java (linguaggio di programmazione)
Kernel
In informatica, il kernel (AFI) o nucleo è un programma situato al centro del sistema operativo che ha generalmente un controllo completo dell'intero sistema e fornisce un accesso sicuro e controllato dell'hardware ai processi in esecuzione sul computer.
Vedere Allocazione dinamica della memoria e Kernel
LIFO
Il termine LIFO è l'acronimo inglese di Last In First Out (ultimo ad entrare, primo ad uscire) e presuppone che vengano scaricati per primi i beni strumentali inseriti per ultimi in magazzino.
Vedere Allocazione dinamica della memoria e LIFO
Lingua inglese
Linglese (nome nativo: English) è una lingua indoeuropea, parlata da circa 1,452 miliardi di persone al 2022. Secondo Ethnologue 2022 (25ª edizione), è la lingua più parlata al mondo per numero di parlanti totali (nativi e stranieri) ed è la terza per numero di parlanti madrelingua (L1) (la prima è il cinese e la seconda è lo spagnolo).
Vedere Allocazione dinamica della memoria e Lingua inglese
Linguaggio macchina
Il linguaggio macchina (o codice macchina), in informatica, indica il linguaggio in cui sono scritti i programmi eseguibili per computer: può venire classificato come linguaggio di programmazione, sebbene quest'ultima espressione sia più spesso riservata per indicare i linguaggi di alto livello con cui si scrivono programmi non direttamente eseguibili, ma che richiedono una traduzione in linguaggio macchina, per es.
Vedere Allocazione dinamica della memoria e Linguaggio macchina
Linux
GNU/Linux, comunemente noto come Linux (pronuncia inglese), è una famiglia di sistemi operativi liberi e open source di tipo Unix-like, pubblicati in varie distribuzioni, che usano come nucleo il kernel Linux: oggi molte importanti società nel campo dell'informatica come Google, Microsoft, Amazon, IBM, Oracle, Hewlett-Packard, Red Hat, Canonical, Novell e Valve sviluppano e pubblicano sistemi Linux.
Vedere Allocazione dinamica della memoria e Linux
Lista concatenata
In informatica, una lista concatenata (o linked list) è una struttura dati dinamica, tra quelle fondamentali usate nella programmazione. Consiste di una sequenza di nodi, ognuno contenente campi di dati arbitrari ed uno o due riferimenti ("link") che puntano al nodo successivo e/o precedente.
Vedere Allocazione dinamica della memoria e Lista concatenata
Macchina virtuale Java
In informatica la macchina virtuale Java (detta anche Java Virtual Machine o JVM) è il componente della piattaforma Java responsabile per l'esecuzione dei programmi in formato bytecode.
Vedere Allocazione dinamica della memoria e Macchina virtuale Java
Malloc
In informatica, malloc (derivato dai termini memory allocation) è una funzione della libreria standard dei linguaggi di programmazione C e C++ per l'allocazione dinamica della memoria.
Vedere Allocazione dinamica della memoria e Malloc
Memoria (informatica)
La memoria, in informatica, è un elemento di un computer o di un suo sottosistema e ha il compito di garantire la persistenza dei dati eo delle istruzioni dei programmi.
Vedere Allocazione dinamica della memoria e Memoria (informatica)
Metadato
Un metadato (pp e - plurale: data, "(dato) per mezzo di un (altro) dato") è un dato che descrive una qualche proprietà di un altro dato. In senso lato è un'informazione a proposito di un'altra informazione.
Vedere Allocazione dinamica della memoria e Metadato
Oggetto (informatica)
Con il termine oggetto, in informatica ed in particolar modo nell'ambito della programmazione, si intende nella maniera più generica una regione di memoria allocata.
Vedere Allocazione dinamica della memoria e Oggetto (informatica)
Oracle Corporation
Oracle Corporation è una società multinazionale del settore informatico, con sede a Austin, Texas. L'azienda vende software e tecnologia per database, sistemi di ingegneria cloud e prodotti software aziendali, in particolare i propri marchi di sistemi di gestione di database.
Vedere Allocazione dinamica della memoria e Oracle Corporation
Paginazione
La paginazione (o paging), in informatica, è la tecnica attraverso la quale il sistema operativo del computer, per mezzo dei rispettivi algoritmi di paging, suddivide la memoria in parti di dimensioni minori, e la alloca al programma da eseguire usando pagine come blocco minimo di lavoro.
Vedere Allocazione dinamica della memoria e Paginazione
Pila (informatica)
La pila (dall'inglese stack), in informatica, è un tipo di dato astratto che viene usato in diversi contesti per riferirsi a strutture dati, le cui modalità d'accesso ai dati in essa contenuti seguono una modalità LIFO, ovvero tale per cui i dati vengono letti in ordine inverso rispetto a quello in cui sono stati inseriti scritti.
Vedere Allocazione dinamica della memoria e Pila (informatica)
Potenza di due
In matematica, una potenza di due è ogni numero intero potenza del numero due, ovvero che si può ottenere moltiplicando due per sé stesso un certo numero di volte.
Vedere Allocazione dinamica della memoria e Potenza di due
Processo (informatica)
Il processo in informatica è un'entità dinamica caricata su memoria RAM generata da un programma: identificato da un codice univoco chiamato PID, più precisamente, esso è una sequenza di attività (task) controllata da un programma (scheduler) che si svolge su un processore in genere sotto la gestione o supervisione del rispettivo sistema operativo.
Vedere Allocazione dinamica della memoria e Processo (informatica)
Programma (informatica)
In informatica, un programma è una sequenza di istruzioni codificate in un linguaggio interpretabile da un elaboratore, espressione di un algoritmo per la risoluzione automatica di una certa classe di problemi.
Vedere Allocazione dinamica della memoria e Programma (informatica)
Programmatore
Un programmatore informatico o semplicemente programmatore (o coder, "scrittore di codice") è un tecnico che, attraverso la relativa fase di programmazione, traduce o codifica l'algoritmo risolutivo di un problema dato nel codice sorgente del software da far eseguire a un elaboratore, utilizzando un determinato linguaggio di programmazione.
Vedere Allocazione dinamica della memoria e Programmatore
Run-time
Nella programmazione il tempo di esecuzione o runtime è il periodo in cui un programma viene eseguito. Tradizionalmente, questa contrapposizione era soprattutto intesa rispetto al tempo di compilazione (compile-time), relativa alla stesura e traduzione del programma sorgente; in questa accezione, spesso si usano anche gli aggettivi dinamico e statico per riferirsi rispettivamente al run-time e al compile-time.
Vedere Allocazione dinamica della memoria e Run-time
Sistema embedded
Un sistema embedded o sistema integrato identifica genericamente tutti quei sistemi elettronici di elaborazione a microprocessore progettati appositamente per un determinato utilizzo (special purpose), ovvero non riprogrammabili dall'utente per altri scopi, spesso con una piattaforma hardware ad hoc, integrati nel sistema che controllano e in grado di gestirne tutte o parte delle funzionalità richieste.
Vedere Allocazione dinamica della memoria e Sistema embedded
Sistema informatico
Un sistema informatico (o sistema di elaborazione dati) è un sistema meccanografico, un computer o un insieme di più computer, apparati o sottosistemi elettronici (come server, database, mainframe, supercomputer, switch, router, modem, terminali), tra loro interconnessi in rete, in un'architettura di base di tipo client-server, e preposti a una o più funzionalità o a servizi di elaborazione a favore degli utenti; a volte più genericamente è detta infrastruttura IT di un'azienda ovvero il complesso delle risorse informatiche a livello hardware e software di un'azienda.
Vedere Allocazione dinamica della memoria e Sistema informatico
Sistema operativo
Un sistema operativo (abbreviato in SO), in informatica, è un software di base, detto anche piattaforma operativa (composto normalmente da più sottosistemi o componenti software: kernel, scheduler, file system, gestore della memoria, gestore delle periferiche, interfaccia utente e spooler di stampa), che gestisce le risorse hardware e software della macchina, fornendo servizi di base ai software applicativi; tra i sistemi operativi per computer desktop si citano Microsoft Windows, MacOS, le distribuzioni Linux, sistemi Unix-like, BSD e Chrome OS, mentre per i dispositivi mobili, quali smartphone e tablet, vi sono iOS, Android, HarmonyOS, Windows Phone, Sailfish OS, Symbian OS e KaiOS.
Vedere Allocazione dinamica della memoria e Sistema operativo
SLOB
SLOB (Simple List Of Block) è uno dei tre allocatori di memoria disponibile nel kernel Linux, gli altri due sono SLAB e SLUB. L'allocatore SLOB è progettato per essere un quadro di allocazione piccolo ed efficiente per l'uso in sistemi di piccole dimensioni come i sistemi embedded.
Vedere Allocazione dinamica della memoria e SLOB
Stack frame
In informatica, uno stack frame è una zona di memoria del call stack che contiene i dati necessari alla subroutine (o funzione) attualmente in esecuzione.
Vedere Allocazione dinamica della memoria e Stack frame
Unix
Unix (ufficialmente registrato come UNIX) è un sistema operativo proprietario e portabile per computer. Originariamente sviluppato da un gruppo di ricerca presso i laboratori AT&T e Bell Laboratories, il team includeva luminari come Ken Thompson e Dennis Ritchie.
Vedere Allocazione dinamica della memoria e Unix
Conosciuto come Heap (gestione della memoria), Memoria allocata dinamicamente, Memoria dinamica.