쉘은 명령 해석기와 어떻게 다른가요? [폐쇄]

쉘은 명령 해석기와 어떻게 다른가요? [폐쇄]

편집: 연결된 중복 질문에서 대답은 shell = 명령줄 해석기입니다. Tanenbaum은 그렇지 않다고 말합니다. 따라서 연결된 질문은 내 질문에 대답하지 않습니다. Tanenbaum은 왜 그렇게 말하고 어떤 종류의 "껍질"을 암시합니까?

Andrew S. Tanenbaum의 "Modern Operating Systems"(3판), 10페이지, 1.2.2 아래를 읽으면 다음과 같은 내용을 볼 수 있습니다.

이러한 원래 제어 카드는 현대 쉘 및 명령줄 해석기의 선구자였습니다.

나는 수년 동안 매일 Linux를 사용해 왔으며 Bash, Sh, Tcsh, Zsh, Csh와 같은 명령줄 해석기의 개념에 익숙합니다. 이제 저는 "shell"이 "Bash"와 "command lineinterpreter"와 같다고 항상 확신해 왔습니다. 또한, 내가 입력한 명령이 실행되고 그 결과가 위 목록에 속하는 특정 실행 파일에 의해 나에게 반환된다는 것을 알고 있습니다. 그러나 Tanenbaum은 이를 별도의 범주로 나열합니다.

그래서 질문은: "가 정확히 무엇입니까?껍데기", "와는 어떻게 다른가요?명령줄 해석기”, 아니면 이 책의 맥락에서 두 개념이 다를 수도 있습니다. 여기서는 GUI 셸이 언급되고 있는 것일까요?

답변1

이것은 꽤 광범위합니다.

쉘은 사용자와 Unix 커널 사이의 인터페이스입니다.

예전에는 쉘이 CLI와 비슷했는데, 즉 shCLI 였습니다 csh.tcsh

요즘에는 그래픽 사용자 인터페이스(X-window의 자식, Apple의 파인더, amiga의 워크벤치)를 사용하여 호스트에 대해 아무것도 모르더라도 호스트를 실행할 수 있으므로 lsGUI를 "셸"이라고도 부를 수 있습니다.

그러나 bash와 friend는 CLI와 shell 시리즈에 속하고, Gnome, KDE 등은 모두 GUI 시리즈에 속합니다.

답변2

나는 또한 Tanenbaum이 비슷한 것을 주장하는 것을 보지 못했습니다. 예를 들어, 다른 버전http://odi-tele.com/mirrors/tanenbaum/tanenbaum/Operating-System-Extended-Machine.html다음과 같은 텍스트가 있습니다.

이 원래 제어 카드는 현대 작업 제어 언어와 명령 해석기의 선구자였습니다.

그런데 이게 rev.4(추측)인지 이전 버전인지는 모르겠지만, 엉망이 되어 변경된 것 같습니다.

관련 정보