Ich bin neugierig auf den Begriff "Shell". Ich denke, ich weiß, was es ist (obwohl die Unterscheidung zwischen "Shell" und "Terminal" immer noch verschwommen ist), aber warum wurde das Wort "Shell" gewählt, um diese Art von Programm zu beschreiben?
Dies mag unwichtig erscheinen, aber wenn mich die Wortwahl verwirrt, deutet dies normalerweise auf eine Lücke in meinem Verständnis hin.
shell
terminology
Eric Wilson
quelle
quelle
Antworten:
Das Multics-Glossar kann einen Hinweis geben. Die Shell ist folgendermaßen definiert:
Die Beziehung zwischen Hülle und Zuhörer ist sowohl etymologisch als auch metaphorisch sinnvoll [1].
[1] "Da die Muschel ein Symbol für Autorität, Sprache und Gehör ist, das heißt ein Symbol für Prophezeiung ..."
quelle
Die Analogie ist mit einer Nuss : Außen ist die Schale, innen ist der Kernel.
quelle
Aus http://en.wikipedia.org/wiki/Thompson_shell#History
"Der Name" Shell "für einen Befehlszeileninterpreter und das Konzept, die Shell zu einem Benutzerprogramm außerhalb des Betriebssystemkerns zu machen, wurden in Unix 'Vorläufer Multics eingeführt."
Weiter unten im Wikipedia-Kaninchenbau findet sich Folgendes: "Louis Pouzin hat den Begriff Shell für die in Multics verwendete Befehlssprache eingeführt."
Ich habe es nicht vollständig gelesen, aber sein Schreiben hier kann Ihnen die Antwort geben: http://www.multicians.org/shell.html
EDIT: in der Tat ist es nicht erklärt. Er "prägte" lediglich den Begriff. Nicht die lustige Geschichte, auf die du gehofft hast, oder?
quelle
Vielleicht, weil es die Oberfläche ist, die den inneren Kern vor dem Benutzer schützt? Der Kern wäre also die Perle in der Schale.
quelle
Sieht so aus, als ob die Antwort hier liegt:
- Wikipedia
Das heißt, "shell" war eine gute reale Analogie dafür, wie Multics, ein Vorgänger von Unix, Programme ausführte.
quelle
Wie ich es verstehe, ist "Shell" ein älterer Begriff für das, was wir jetzt "Primäre Benutzeroberfläche" nennen würden. Der moderne analoge Begriff wäre "Desktop-Umgebung", da virtuell alle modernen Systeme die Desktop-Metapher verwenden.
quelle
Der Kernel ist der Kern des Systems, während die Shell ihn umgibt und die Schnittstelle zwischen dem Kernel und dem Benutzer ist.
In jedem UNIX-System und sogar in Linux-Systemen ist die Shell der Ort, an dem Systemadministratoren arbeiten, um ein System zu konfigurieren und zu verwalten.
In der modernen Terminologie wird häufig der Begriff CLI oder Befehlszeilenschnittstelle verwendet, um die Shell-Eingabeaufforderung zu beschreiben. Dies steht im Widerspruch zur GUI oder zur grafischen Benutzeroberfläche. Jeder echte Sysadmin weiß jedoch, dass Sie keine GUI-Tools zum Konfigurieren von UNIX / Linux verwenden und nur direkt an der Shell-Eingabeaufforderung arbeiten sollten.
Dies ist heutzutage noch relevanter, wenn wir hören, wie einige junge Linux-Enthusiasten Dinge sagen wie "Ich benutze Linux, aber ich habe die CLI nicht wirklich gelernt".
Wie das alte Sprichwort sagt: "Wenn Sie es nicht an der Shell-Eingabeaufforderung tun können, können Sie es nicht tun."
quelle