Quina diferència hi ha entre shell, consola, terminal i nucli? A més, quina diferència hi ha entre els programes de shell i d'aplicacions?


Resposta 1:

Shell: una interfície per accedir als serveis del sistema que ofereix el sistema operatiu. Bàsicament, és un intèrpret que interpreta les ordres que proporcioneu i les converteix en trucades del sistema.

Consola: és un dispositiu que permet als usuaris donar entrades en forma d’ordres i mostrar missatges del nucli, avisos i sortides.

Terminal: Les consoles del sistema es poden generalitzar a terminals d’ordinador on un terminal és un dispositiu de maquinari que s’utilitza per introduir dades i mostrar dades des d’un ordinador.

Una consola és com un emulador de terminal.

Nucli: És el nucli central del sistema operatiu. Controla tot el que es produeix al sistema i es comunica amb el maquinari. Realitza tasques com executar processos, manejar interrupcions, etc. Té molts subsistemes com ara la gestió de processos, la planificació, la gestió de fitxers, la gestió de dispositius i la gestió de xarxa.

Combinant tot això: el comandament escrit en una emuladora de consoles / terminals és interpretat pel shell per executar el nucli. Així, l'usuari es comunica a través del shell amb el nucli.


Resposta 2:

1> Tots els shells de primer pla (els que tenen stdin, stdout i stderr) han d’anar associats a un terminal. Així, quan obriu un terminal, veureu que la shell associada amb la vostra sessió de sessió (check / etc / passwd per obtenir més detalls) s’invoca. El primer accés a la consola invoca el shell de sessió.

2> El terminal proporciona una manera de mostrar caràcters. Per exemple. shell utilitza variables d’entorn LINES i COLUMNS per conèixer la mida de la “pantalla” (mida real del terminal) i transmet la informació a tots els seus fills. Quan s'invoca un editor (com vi) al shell, hereta aquestes variables d'entorn i mostra la pantalla de l'editor mitjançant la mida de la finestra especificada per LINES i COLUMNS. En paraules senzilles, el terminal proporciona disciplina de línia i proporciona un mecanisme per controlar E / S de STDOUT, STDERR i STDIN.

3> La consola és un terminal per defecte que no necessita el sistema X-Windows. És com un terminal d’interfície cel·lular de caràcter. Això el fa servir el nucli per mostrar els seus missatges durant l'arrencada i durant el seu funcionament i durant un pànic. La consola s'utilitza quan el sistema X-Windows no es pot utilitzar. Durant l'arrencada, el sistema X-Windows no es produeix. Durant el pànic del sistema, el sistema X-Windows no es pot confiar, ja que el bloqueig podria ser degut a una corrupció de la memòria. Les escriptures de consoles es fan normalment escrivint directament als ports UART.

4> Sí. En realitat significa que l'ordre s'està executant en un shell associat a un terminal.

5> Shell és només un altre programa d’aplicació. L’única diferència és que espera (s) a tots els seus fills (els invocats a aquest terminal / closca) i neteja l’espai d’adreces després que el nen s’exhibeixi o s’estavelli. Això és similar al que fa init / upstart / systemd. Els daemons són gestionats directament per init / upstart / systemd, ja que no tenen terminal associat (tanquen STDIN, STDOUT i STDERR).

6> La línia de comandament fa referència al shell.