Neden “kabuk” sözcüğü bir komut satırı arabirimini aşağılamak için kullanıldı?


28

"Kabuk" terimini merak ediyorum. Sanırım bunun ne olduğunu ("kabuk" ve "terminal" arasındaki fark hala bulanık olsa da) biliyorum ama neden bu tür bir programı tanımlamak için "kabuk" kelimesi seçildi?

Bu önemsiz görünebilir, ancak genellikle seçimler kelimesi beni mistleştirdiğinde, benim anlayışımdaki bir boşluğu işaret ediyor.


Bir terminal, bir cihaz veya G / Ç borusudur. Bir kabuk, etkileşimli olarak gerçek zamanlı olarak bir terminalden kullanıcı girişi alan ve daha sonra buna göre işler yapan çalıştırılabilir bir programdır. Doğrudan etkileşimli kullanım için provizyon içermeyen "Kabuklar" teknik olarak bir tür komut dosyası tercümanıdır.
LawrenceC

Yanıtlar:


8

Multics sözlüğü bir ipucu sağlayabilir. Böylece kabuk tanımlanır:

Multics komut işlemcisine kabuk denirdi. Bu program dinleyicinin yürütmesi için bir komut satırından geçmiştir; satırı bir komut ismine ve argümanlara ayrıştırır, komutu bulur ve başlatır ve komut programını PL / I karakter dizgileri olan argümanlarla çağırır. Varsayılan sistem tarafından sağlanan kabuğu kullanıcı tarafından sağlanan bir programla değiştirmek kolaydır, cu_ $ set_cp (bkz. Kısalt). Bir Unix kabuğu, Multics anlamında hem kabuk hem de dinleyici kavramlarını içerir.

Kabuk ve dinleyici arasındaki ilişki hem etimolojik hem de metaforik olarak anlamlıdır [1].

[1] “Kabuk bir otorite, konuşma ve işitme sembolü olduğundan, kehanetin sembolü demek ...”



10

Gönderen http://en.wikipedia.org/wiki/Thompson_shell#History

"Komut satırı yorumlayıcısı için" kabuk "adı ve kabuğu, işletim sistemi çekirdeği dışında bir kullanıcı programı yapma kavramı Unix'in öncüsü Multics'te tanıtıldı."

Wikipedia tavşan deliğinden daha aşağıya şunu bulur: "Louis Pouzin, Multics'te kullanılan komut dili için kabuk terimini kullandı"

Tam olarak okumamıştım, ancak burada yazdığı cevap size cevap verebilir: http://www.multicians.org/shell.html

EDIT: gerçekten açıklanmadı. Sadece terimi “icat etti”. Umduğun komik hikaye değil miydi?


3
Tatmin edici, ancak bazen böyle gider.
Eric Wilson

10

Belki de iç çekirdeği kullanıcıdan koruyan yüzey olduğu için? Böylece çekirdek kabuğun içindeki inci olacaktır.


Her zaman kabuğun, kullanıcıyı çekirdekten koruyan koruyucu bir tabaka olduğunu duydum.
Glorytoad

1

Cevap burada yatıyor gibi gözüküyor:

Tarihsel not: Görünüşe göre, orijinal Multics kabuğu (1. duyu), bir kabuk olduğu için çağrıldı (3. duyu); kullanıcı programlarını ayrı işlemler başlatmakla değil, programları kendi koduna dinamik olarak bağlayarak, alt rutin olarak çağırarak ve daha sonra geri dönüşlerini dinamik olarak ayırarak çalıştırdı. VMS komut yorumlayıcısı hala buna benzer bir şey yapıyor.

- Wikipedia

Yani, "kabuk" Unix'in öncüllerinden Multics'in programları çalıştırmasıyla ilgili gerçek bir dünya benzetmesiydi.


Vikipedi olsa bir kaynak değildir. Biri olarak kullanmak, Wikipedia'nın bir site kaynağı olarak kullandığı ve kendisi de Wikipedia'yı bir kaynak olarak kullandığı dairesel kaynak kullanımına yol açar. Bu haliyle, saf bir spekülasyon.
Evi1M4chine

0

Anladığım kadarıyla "kabuk", şimdi "Birincil Kullanıcı Arabirimi" olarak adlandırdığımız terim için daha eski bir terimdir. Modern analog terim "Masaüstü Ortamı" dır, çünkü sanallık bütün modern sistemler masaüstü metaforunu kullanır.


1
Çok fazla örtüşme var, ancak bu tam olarak doğru değil. Her kabuk bir kullanıcı arayüzüdür. Ancak her kullanıcı arayüzü bir kabuk değildir. Bir kabuk, ana kullanıcı arayüzüdür, her şeyin etrafında ve her şeyin başladığı yerdir. İşletim sisteminin ana kullanıcı arayüzü.
Evi1M4chine

-2

Çekirdek sistemin çekirdeğidir, kabuk ise onu çevreler ve çekirdek ile kullanıcı arasındaki arayüzdür.

Herhangi bir UNIX sisteminde ve hatta Linux sistemlerinde, kabuk, sistem yöneticilerinin bir sistemi yapılandırmak ve yönetmek için çalıştığı yerdir.

Modern terminoloji genellikle kabuk istemini tanımlamak için CLI veya komut satırı arayüzü terimini kullanır. Bu GUI veya grafiksel kullanıcı arayüzüne aykırıdır. Ancak, herhangi bir gerçek Sysadmin, bir UNIX / Linux yapılandırması için GUI araçlarını kullanmamanız gerektiğini ve yalnızca doğrudan kabuk komut isteminde çalışmanız gerektiğini bilir.

Bugünlerde bazı Linux meraklılarının "Linux kullanıyorum ama CLI'yi gerçekten öğrenmedim" gibi şeyler söylediğini duyduğumuzda bu daha da önemli.

Eski atasözü giderken "Kabuk isteminde bunu yapamazsanız, yapamazsınız."


Doğruyu söylediğim için oy kullandım. ah iyi ...
Colinux
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.