Crea sito
22 Ottobre 2020

Officine Informatiche Roma

ICT SERVICES ROMA – BAZAAR INFORMATICO

Principali sottosistemi del kernel Linux

6 min read
Di seguito sono indicati alcuni dei sottosistemi del kernel Linux. Discutiamoli uno per uno in dettaglio. Interfaccia di chiamata di sistema: Una chiamata di sistema è un processo programmatico in cui un programma richiede un servizio dal kernel di un sistema operativo. Include vari servizi hardware come la connessione con dispositivi hardware e la creazione di un'interfaccia di comunicazione tra le parti integranti del kernel. La chiamata di sistema crea un'interfaccia efficiente tra un sistema operativo e un processo.

Di seguito sono indicati alcuni dei sottosistemi del kernel Linux.

Discutiamoli uno per uno in dettaglio.

 

Interfaccia di chiamata di sistema:
Una chiamata di sistema è un processo programmatico in cui un programma richiede un servizio dal kernel di un sistema operativo. Include vari servizi hardware come la connessione con dispositivi hardware e la creazione di un’interfaccia di comunicazione tra le parti integranti del kernel. La chiamata di sistema crea un’interfaccia efficiente tra un sistema operativo e un processo.

Gestione dei processi:
Il Kernel si occupa di creare e distruggere i diversi processi e monitora la loro connessione con il mondo esterno come input e output. Gestisce la comunicazione tra diversi metodi tramite segnali, primitive di comunicazione tra processi o pipe. Oltre a tutti questi, ha anche uno scheduler che controlla i processi di condivisione della CPU.

1. Gestione della memoria:
La memoria è un componente vitale di un sistema operativo e il kernel se ne occupa. Linux gestisce i meccanismi di memoria e hardware disponibili per i mapping virtuali e fisici.

La gestione della memoria non è solo la gestione dei buffer 4KB, ma è molto di più. Linux fornisce anche astrazioni diverse dai buffer a 4kb, noti come allocatori di lastre. L’allocatore di lastre utilizza il buffer da 4kb come base, ma alloca le strutture dall’interno monitorando cose come, quali pagine sono piene, vuote e parzialmente utilizzate. Ciò consente allo schema di crescere dinamicamente e nel supportare le esigenze più significative del sistema.

2. File system virtuale:
Il file system virtuale (VFS) è una parte integrante importante del kernel e facilita l’astrazione dell’interfaccia comune per il file system. VFS crea un livello di commutazione tra il file system supportato dal kernel e SCI (System Call Interface).

Oltre a quanto sopra, Linux supporta vari tipi di file system che richiedono diversi modi di organizzare i dati per l’archiviazione in formato fisico. Ad esempio, un disco può essere formattato con il file system FAT comunemente usato, il file system ext3 standard Linux o molti altri.

3. Driver di dispositivo:
Una gran parte del codice sorgente del kernel è memorizzata nei driver di dispositivo e ciò rende utilizzabile un dispositivo hardware specifico. Linux fornisce una sottodirectory del driver che è ulteriormente suddivisa in vari dispositivi supportati, come I2C, Bluetooth, seriale, ecc.

4. Codice dipendente dall’architettura:
Anche se gran parte di Linux funziona sulla sua architettura indipendente, alcuni elementi dovrebbero essere considerati per l’efficienza dell’architettura e il normale funzionamento. Linux ha molte sottodirectory e ogni sottodirectory dell’architettura ha molti numeri È importante notare che, a seconda del sistema UNIX in uso, l’albero del file system potrebbe cambiare; alcuni file e directory potrebbero cambiare.

L’albero del file system inizia dalla barra o dal trunk, che, se si osserva la nostra tabella, è la barra (/) in avanti. Questo è ciò che chiamiamo directory root; è la directory sottostante per tutti i file. Le directory sono un livello al di sotto della barra o della directory principale spesso hanno la barra nei loro nomi procedenti per indicare la loro posizione e per evitare confusione con altri file o directory con nomi simili.

Una domanda che affligge la maggior parte degli utenti Linux è dove sono memorizzati i programmi e i file di programma quando sono installati sul sistema. Esaminiamo questo per un minuto. Linux utilizza due partizioni: la partizione di dati in cui si trovano i dati di sistema, comprese le directory principali e tutte le risorse di sistema necessarie per avviare il sistema, e la partizione di swap, che è un’espansione della memoria fisica sul computer. Tutti i file (compresi i programmi) sono archiviati in questa directory radice in conformità con il file system dell’albero Linux che abbiamo già esaminato.

Manipolazione dei file
Per mostrare nomi di file, proprietà, data di creazione, autorizzazione, tipo, dimensione, file di collegamento e proprietari, il comando Is è il modo più semplice.

La creazione e l’eliminazione di file e directory sul proprio sistema è molto importante quando si desidera creare nuovi file o eliminare directory ridondanti per liberare spazio. Poiché l’interfaccia grafica è molto o meno quella di MS-DOS, la creazione di file non è così difficile. L’eliminazione dei file, d’altra parte, è moderatamente difficile. Esistono alcuni file manager popolari per GNU / Linux, molti dei quali sono file eseguibili accessibili dal desktop manager, dall’icona della home directory o dalla riga di comando usando i seguenti comandi.

Gestione dei file

Nautilus: questo è il file manager predefinito nel desktop GNU Gnome. Ci sono risorse molto utili su come utilizzare questo strumento online.

Konqueror: questo file manager è tipico nei desktop KDE.

MC: Il codice chiamato Midnight Commander è modellato dal Norton Commander.

Per una gestione dei file più semplice, le applicazioni sopra menzionate valgono il tempo di leggere la documentazione e lo sforzo. È anche importante notare che ci sono molte più applicazioni di gestione dei file, ma queste sono le più popolari e hanno un livello di difficoltà moderato. Inoltre, questi strumenti ottimizzano i comandi UNIX in un modo specifico.

Per conservare file e cose in un unico posto, è necessario allocare percorsi predefiniti di file specifici creando directory e sottodirectory per loro. Puoi farlo usando il comando mkdir. Per esempio:

1
2
3
4
5
6
john: ~> archivio cd
john: ~ / archive> mkdir 1999 2000 2001
john: ~ / Archivio> ls
1999/2000/2001 /
john: ~ / archive> mkdir 2001 / reports / Suppliers-Industrial /
mkdir: impossibile creare la directory `2001 / reports / Suppliers-Industrial / ‘:
Inoltre, puoi creare facilmente le sottodirectory in un solo passaggio usando l’opzione – p. Per esempio:

1
2
3
4
5
6
john: ~> archivio cd
john: ~ / archive> mkdir 1999 2000 2001
john: ~ / Archivio> ls
1999/2000/2001 /
john: ~ / archive> mkdir 2001 / reports / Suppliers-Industrial /
mkdir: impossibile creare la directory `2001 / reports / Suppliers-Industrial / ‘:
Nessun file o directory con questo nome

1
2
3
john: ~ / archive> mkdir -p 2001 / reports / Suppliers-Industrial /
john: ~ / archive> ls 2001 / reports /
Fornitori-industriale /:
Autorizzazioni per i file

In alcuni casi, troverai che il file necessita di maggiori o altre autorizzazioni non incluse nell’autorizzazione di creazione del file; questo viene chiamato come diritto di accesso.

I diritti di accesso sono impostati usando lo stesso comando mkdir. È importante notare che esistono regole su come nominare una directory. Ad esempio, in una directory, non è possibile avere due file con lo stesso nome. Tuttavia, è importante notare che Linux e UNIX sono sistemi case sensitive (puoi avere due nomi di file con te e YOU nella stessa directory). Inoltre, non ci sono limiti alla lunghezza di un nome file, quindi la denominazione dei file dovrebbe essere un gioco da ragazzi. Puoi anche usare caratteri speciali nei nomi dei file purché questi caratteri non abbiano un significato speciale per la shell.

Spostamento di file

Lo spostamento di file non classificati utilizza il comando mv.

1
john: ~ / archive> mv ../report[1-4 lasting.doc reports / Suppliers-Industrial /
Lo stesso comando è utilizzato anche quando stiamo rinominando i file

Il comando può anche tornare utile, se si desidera rinominare i file:

Comando

Nell’esempio sopra, possiamo vedere che cambia solo il nome del file e tutte le altre proprietà non cambiano.

Copia dei file
Il comando cp viene utilizzato per copiare directory e file. C’è anche un’opzione molto utile per copiare tutte le sottodirectory e i file sottostanti (copia ricorsiva) che utilizza –R. Ecco uno sguardo alla sintassi generale.

1
cp [-R] dal file tofile
Rimozione o eliminazione di file

Il comando rm entra in gioco quando si desidera rimuovere singoli file, mentre il comando rmdir svolge il suo ruolo nella rimozione di directory vuote. È importante notare che alcune directory non sono cancellabili (.dot e ..dot) perché sono necessarie per il corretto posizionamento di una directory nella gerarchia dell’albero. Come UNIX, Linux non ha un cestino (cestino) e una volta rimosso un file, è così, è sparito e non è possibile recuperarlo a meno che non si disponga di un backup. Per proteggerti, a volte “elimina errori”, puoi attivare il comportamento interattivo dei comandi cp, mv e rm usando l’opzione -i. Quando l’opzione –i è attiva, il sistema non esegue immediatamente un comando come delete; richiede invece la conferma, che richiede la pressione di un tasto o un clic aggiuntivo per eseguire completamente il comando.

Conclusione
Il kernel Linux svolge un ruolo importante nell’allocazione delle risorse a diverse applicazioni. Il kernel funge da posizione centralizzata per connettere hardware e software ed esegue le applicazioni in un sistema. Il kernel di Linux ha avuto più popolarità grazie alla sua natura open source. Gli utenti possono personalizzare questo sistema operativo in base alle proprie esigenze. Pertanto, è stato utilizzato da un’ampia varietà di dispositivi.

La caratteristica modulare del kernel Linux consente un’ampia gamma di modifiche senza riavviare il sistema. La flessibilità del kernel consente ai suoi utenti di ottenere il massimo livello. Inoltre, la natura monolitica di questo kernel ha un potere computazionale maggiore rispetto al microkernel.

Translate »