Domanda

Voglio accedere alle mie risorse di sistema come la CPU senza l'uso delle chiamate di sistema OS. C'è un modo per renderlo possibile?

È stato utile?

Soluzione

L'unico modo per accedere all'hardware direttamente sulla maggior parte dei sistemi operativi moderni, Linux e Windows incluso, è tramite codice kernel. Driver del dispositivo Linux è un ottimo punto di partenza per scrivere tale codice su Linux, anche se è un po 'datato .

In caso contrario, il sistema operativo fornisce varie strutture I / O e controlla l'assegnazione delle risorse alle applicazioni utente, utilizzando l'interfaccia di chiamata di sistema. L'interfaccia di chiamata di sistema è onnipresente nel suo concetto di base tra tutti i sistemi operativi che effettivamente dispongono di una sorta di separazione tra il kernel e il codice utente. L'uso di interrupt software è il modo standard per implementare le chiamate di sistema su hardware corrente.

È necessaria una chiamata di sistema per allocare la minima quantità di memoria e persino di leggere o scrivere un singolo carattere. Per non parlare del fatto che anche un programma che fa assolutamente nulla in genere ha bisogno di alcune chiamate di sistema solo per essere caricato.

È possibile ottenere un accesso più diretto all'hardware se hai usato dos o un Exokernel Design.

ma perché vorresti farlo comunque? L'hardware moderno è lontano dal banale per lavorare direttamente con direttamente.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top