Shell (điện toán) – Wikipedia

Giao diện đồ họa từ cuối những năm 1980, có cửa sổ TUI cho trang con người. Một cửa sổ văn bản khác cho trình bao Unix có thể nhìn thấy một phần.

Trong điện toán, trình bao là giao diện người dùng để truy cập vào các dịch vụ của hệ điều hành. Nói chung, hệ vỏ hệ điều hành sử dụng giao diện dòng lệnh (CLI) hoặc giao diện người dùng đồ họa (GUI), tùy thuộc vào vai trò của máy tính và hoạt động cụ thể. Nó được đặt tên là shell bởi vì nó là lớp ngoài cùng xung quanh kernel hệ điều hành. [1][2]

Shell CLI yêu cầu người dùng phải làm quen với các lệnh và cú pháp gọi của chúng, và để hiểu các khái niệm về ngôn ngữ script đặc thù của shell (ví dụ bash kịch bản). Chúng cũng được vận hành dễ dàng hơn thông qua màn hình chữ nổi có thể làm mới và cung cấp một số lợi thế nhất định cho trình đọc màn hình.

Vỏ đồ họa đặt một gánh nặng thấp cho người dùng máy tính mới bắt đầu và được đặc trưng là dễ sử dụng. Vì chúng cũng có một số nhược điểm nhất định, hầu hết các hệ điều hành hỗ trợ GUI cũng cung cấp trình bao CLI.

Tổng quan [ chỉnh sửa ]

Hệ điều hành cung cấp nhiều dịch vụ khác nhau cho người dùng của họ, bao gồm quản lý tệp, quản lý quy trình (chạy và chấm dứt ứng dụng), xử lý hàng loạt và giám sát và cấu hình hệ điều hành .

Hầu hết các hệ điều hành hệ vỏ không phải là giao diện trực tiếp với hạt nhân bên dưới, ngay cả khi hệ vỏ giao tiếp với người dùng thông qua các thiết bị ngoại vi được gắn trực tiếp vào máy tính. Shell thực sự là các ứng dụng đặc biệt sử dụng API kernel giống như cách mà các chương trình ứng dụng khác sử dụng. Một shell quản lý sự tương tác của hệ thống người dùng bằng cách nhắc người dùng nhập liệu, giải thích đầu vào của họ và sau đó xử lý một đầu ra từ hệ điều hành bên dưới (giống như một vòng lặp in của ev ev eval, REPL). [3] thực sự là một ứng dụng, nó có thể dễ dàng được thay thế bằng một ứng dụng tương tự khác, đối với hầu hết các hệ điều hành.

Ngoài các shell chạy trên các hệ thống cục bộ, có nhiều cách khác nhau để cung cấp các hệ thống từ xa cho người dùng cục bộ; phương pháp tiếp cận như vậy thường được gọi là truy cập từ xa hoặc quản trị từ xa. Ban đầu khả dụng trên các máy tính lớn nhiều người dùng, cung cấp UI dựa trên văn bản cho từng người dùng hoạt động đồng thời bằng một thiết bị đầu cuối văn bản được kết nối với máy tính lớn thông qua dòng nối tiếp hoặc modem, truy cập từ xa đã mở rộng đến các hệ thống giống Unix và Microsoft Windows. Trên các hệ thống giống Unix, giao thức Secure Shell thường được sử dụng cho các shell dựa trên văn bản, trong khi đường hầm SSH có thể được sử dụng cho các giao diện người dùng đồ họa (GUI) dựa trên X Window System. Trên Microsoft Windows, Remote Desktop Protocol có thể được sử dụng để cung cấp quyền truy cập từ xa GUI và vì Windows Vista, PowerShell Remote có thể được sử dụng để truy cập từ xa dựa trên văn bản thông qua WMI, RPC và WS-Management. [4]

Hầu hết các hệ điều hành shell thuộc một trong hai loại – dòng lệnh và đồ họa. Các shell dòng lệnh cung cấp giao diện dòng lệnh (CLI) cho hệ điều hành, trong khi các shell đồ họa cung cấp giao diện người dùng đồ họa (GUI). Các khả năng khác, mặc dù không phổ biến, bao gồm giao diện người dùng giọng nói và các triển khai khác nhau của giao diện người dùng dựa trên văn bản (TUI) không phải là CLI. Các giá trị tương đối của hệ vỏ dựa trên CLI và GUI thường được tranh luận.

Shell văn bản (CLI) [ chỉnh sửa ]

Giao diện dòng lệnh (CLI) là một vỏ hệ điều hành sử dụng các ký tự chữ và số được gõ trên bàn phím để cung cấp hướng dẫn và dữ liệu Hệ điều hành, tương tác. Ví dụ, một teletypewriter có thể gửi các mã đại diện cho tổ hợp phím đến một chương trình thông dịch lệnh chạy trên máy tính; trình thông dịch lệnh phân tích chuỗi các tổ hợp phím và trả lời thông báo lỗi nếu nó không thể nhận ra chuỗi ký tự hoặc có thể thực hiện một số hành động chương trình khác như tải chương trình ứng dụng, liệt kê tệp, đăng nhập người dùng và nhiều người khác. Các hệ điều hành như UNIX có rất nhiều chương trình shell với các lệnh, cú pháp và khả năng khác nhau. Một số hệ điều hành chỉ có một kiểu giao diện lệnh duy nhất; Các hệ điều hành hàng hóa như MS-DOS đi kèm với giao diện lệnh tiêu chuẩn nhưng giao diện của bên thứ ba cũng thường có sẵn, cung cấp các tính năng hoặc chức năng bổ sung như thực đơn hoặc thực thi chương trình từ xa.

Các chương trình ứng dụng cũng có thể thực hiện giao diện dòng lệnh. Ví dụ, trong các hệ thống giống Unix, chương trình telnet có một số lệnh để điều khiển liên kết đến hệ thống máy tính từ xa. Vì các lệnh cho chương trình được tạo từ cùng một tổ hợp phím khi dữ liệu được gửi đến một máy tính từ xa, nên một số phương tiện để phân biệt hai loại này là bắt buộc. Một chuỗi thoát có thể được xác định, sử dụng một tổ hợp phím cục bộ đặc biệt không bao giờ được truyền vào mà luôn được hệ thống cục bộ giải thích. Chương trình trở thành phương thức, chuyển đổi giữa các lệnh diễn giải từ bàn phím hoặc chuyển tổ hợp phím trên dưới dạng dữ liệu cần xử lý.

Một tính năng của nhiều shell dòng lệnh là khả năng lưu các chuỗi lệnh để sử dụng lại. Một tệp dữ liệu có thể chứa các chuỗi lệnh mà CLI có thể được thực hiện để tuân theo như thể được nhập bởi người dùng. Các tính năng đặc biệt trong CLI có thể được áp dụng khi thực hiện các hướng dẫn được lưu trữ này. Các tệp bó như vậy (tệp script) có thể được sử dụng nhiều lần để tự động hóa các hoạt động thường ngày như khởi tạo một bộ chương trình khi hệ thống được khởi động lại. Việc sử dụng chế độ hàng loạt của shell thường liên quan đến cấu trúc, điều kiện, biến và các yếu tố khác của ngôn ngữ lập trình; một số có những yếu tố cần thiết cho mục đích như vậy, một số khác là ngôn ngữ lập trình rất tinh vi trong chính chúng. Ngược lại, một số ngôn ngữ lập trình có thể được sử dụng tương tác từ vỏ hệ điều hành hoặc trong chương trình được xây dựng có mục đích.

Shell dòng lệnh có thể cung cấp các tính năng như hoàn thành dòng lệnh, trong đó trình thông dịch mở rộng các lệnh dựa trên một vài ký tự mà người dùng nhập vào. Trình thông dịch dòng lệnh có thể cung cấp chức năng lịch sử, để người dùng có thể nhớ lại các lệnh trước đó được cấp cho hệ thống và lặp lại chúng, có thể với một số chỉnh sửa. Vì tất cả các lệnh cho hệ điều hành phải được gõ bởi người dùng, tên lệnh ngắn và hệ thống nhỏ gọn để biểu diễn các tùy chọn chương trình là phổ biến. Tên ngắn đôi khi rất khó để người dùng nhớ lại và các hệ thống ban đầu thiếu tài nguyên lưu trữ để cung cấp hướng dẫn hướng dẫn sử dụng trực tuyến chi tiết.

Vỏ đồ họa [ chỉnh sửa ]

Vỏ đồ họa cung cấp phương tiện để thao tác các chương trình dựa trên giao diện người dùng đồ họa (GUI), bằng cách cho phép các hoạt động như mở, đóng, di chuyển và thay đổi kích thước cửa sổ , cũng như chuyển trọng tâm giữa các cửa sổ. Vỏ đồ họa có thể được bao gồm trong môi trường máy tính để bàn hoặc đi riêng, ngay cả khi là một bộ các tiện ích được ghép lỏng lẻo.

Hầu hết các giao diện người dùng đồ họa phát triển phép ẩn dụ của "máy tính để bàn điện tử", trong đó các tệp dữ liệu được thể hiện như thể chúng là tài liệu giấy trên bàn và các chương trình ứng dụng tương tự có biểu diễn đồ họa thay vì được gọi bằng tên lệnh.

Các hệ thống giống Unix [ chỉnh sửa ]

Các vỏ đồ họa thường được xây dựng trên đỉnh của một hệ thống cửa sổ. Trong trường hợp X Window System hoặc Wayland, shell bao gồm trình quản lý cửa sổ X hoặc bộ tổng hợp Wayland, cũng như một hoặc nhiều chương trình cung cấp chức năng để bắt đầu các ứng dụng đã cài đặt, để quản lý các cửa sổ mở và máy tính để bàn ảo và thường để hỗ trợ một công cụ phụ tùng.

Trong trường hợp của macOS, Quartz có thể được coi là hệ thống cửa sổ, và vỏ bao gồm Finder, [5] Dock, [5] SystemUIServer, [5] và Mission Control. [6]

Microsoft Windows [ chỉnh sửa ]

Các phiên bản hiện đại của hệ điều hành Microsoft Windows sử dụng vỏ Windows làm vỏ của chúng. Windows Shell cung cấp môi trường máy tính để bàn quen thuộc, menu bắt đầu và thanh tác vụ, cũng như giao diện người dùng đồ họa để truy cập các chức năng quản lý tệp của hệ điều hành. Các phiên bản cũ hơn cũng bao gồm Trình quản lý chương trình, là trình bao cho loạt Microsoft Windows 3.x và trên thực tế được phát hành với các phiên bản Windows mới hơn của cả hai loại 95 và NT ít nhất thông qua Windows XP. Giao diện của phiên bản Windows 1 và 2 khác nhau rõ rệt.

Các ứng dụng máy tính để bàn cũng được coi là hệ vỏ, miễn là chúng sử dụng động cơ của bên thứ ba. Tương tự như vậy, nhiều cá nhân và nhà phát triển không hài lòng với giao diện của Windows Explorer đã phát triển phần mềm làm thay đổi chức năng và sự xuất hiện của vỏ hoặc thay thế hoàn toàn. WindowBlinds của StarDock là một ví dụ điển hình về loại ứng dụng trước đây. LiteStep và Emerge Desktop là những ví dụ điển hình về cái sau.

Các chương trình tương tác và phần mềm được thiết kế cho mục đích cho phép người dùng Windows sử dụng tương đương với nhiều GUI dựa trên Unix khác nhau được thảo luận dưới đây, cũng như Macintosh. Tương đương với Trình quản lý bản trình bày OS / 2 cho phiên bản 3.0 có thể chạy một số chương trình OS / 2 trong một số điều kiện sử dụng hệ thống con môi trường OS / 2 trong các phiên bản Windows NT.

Các cách sử dụng khác [ chỉnh sửa ]

"Shell" cũng được sử dụng một cách lỏng lẻo để mô tả phần mềm ứng dụng được "xây dựng xung quanh" một thành phần cụ thể, như trình duyệt web và ứng dụng email, trong tương tự với vỏ tìm thấy trong tự nhiên. Đôi khi chúng cũng được gọi là "trình bao bọc". [2]

Trong các hệ chuyên gia, shell là một phần mềm là một hệ thống chuyên gia "trống rỗng" không có cơ sở kiến ​​thức cho bất kỳ ứng dụng cụ thể nào . [7]

Xem thêm [ chỉnh sửa ]

Tài liệu tham khảo [ chỉnh sửa ]

  1. ^ "Người đàn ông thứ năm của Internet", Quét não , Nhà kinh tế học Luân Đôn: Tập đoàn kinh tế, ngày 13 tháng 12 năm 2013, Ông Pouzin đã tạo ra một chương trình có tên RUNCOM giúp người dùng tự động hóa các lệnh lặp đi lặp lại và tẻ nhạt. Chương trình đó, được ông mô tả là một vỏ shell, xung quanh các bộ phận quay cuồng của máy tính, đã truyền cảm hứng cho một tên lửa và toàn bộ một công cụ phần mềm, được gọi là vỏ dòng lệnh, vẫn ẩn dưới bề mặt của các hệ điều hành hiện đại. [19659044] ^ a b Raymond, Eric S. (chủ biên). "Vỏ". Tập tin Jargon .
  2. ^ "Vỏ hệ điều hành". Trung tâm thông tin AIX 6.1 . Tập đoàn IBM . Truy cập ngày 16 tháng 9, 2012 .
  3. ^ Wheeler, Sean; Coulter, David; Gucci, Matt; Jofre, JuanPablo; Aiello, Joey; Nikolić, Aleksandar (ngày 5 tháng 6 năm 2017). "Chạy các lệnh từ xa" (Web) . Tài liệu Microsoft . Tập đoàn Microsoft . Truy cập 3 tháng 6 2018 . Bạn có thể chạy các lệnh trên một hoặc hàng trăm máy tính bằng một lệnh Windows PowerShell. Windows PowerShell hỗ trợ tính toán từ xa bằng cách sử dụng các công nghệ khác nhau, bao gồm WMI, RPC và WS-Management. c "Vòng đời của một con ma quỷ". Apple Inc.
  4. ^ "Khởi động lại điều khiển nhiệm vụ trong OS X Lion". OSXD hàng ngày. Ngày 23 tháng 11 năm 2011
  5. ^ Hiệp hội máy tính Anh: Thuật ngữ BCS về CNTT-TT và thuật ngữ điện toán . Giáo dục Pearson. 2005. tr. 135. Mã số 980-0-13-147957-9.