سؤال ما الفرق بين الطرفية ووحدة التحكم وشل و Command Line؟


ما الفرق بين الطرفية ووحدة التحكم وشل و Command Line؟


173
2017-08-04 04:35


الأصل


(1/2) وكيل كول هو الصحيح في الغالب ، ولكن تعريف وحدة التحكم التي يقدمها هو قديم ، نظرا لهذا الموضوع. يحتوي رابطه على المعلومات الصحيحة ، إذا اتبعتها. إقرأ ال كامل تعريف في صلاته. تستخدم وحدة التحكم بشكل فضفاض لتعني الكثير من الأشياء المتشابهة ، ولكن الأهم من ذلك أنها تشير عادة إلى أجهزة الإدخال والإخراج البشرية المحلية ، على سبيل المثال ، لوحة المفاتيح ، والعرض ، وربما الماوس. - 0xSheepdog
(2/2) قد يبدو هذا كأنه نقطة متحركة ، لكن كخبير نظام ، سأخبرك ليس. عندما يواجه النظام مشكلة ويبدو أنه يتحطم بالكامل / لأسفل / دون اتصال ، يجب عليك التحقق من وحدة التحكم الفعلية النظام لمعرفة ما إذا كان لا يزال يعمل ، ولكن ببساطة فقدت الاتصال بالشبكة. هذه التفاصيل الصغيرة يمكن أن توفر أو تكلفك بيانات ، ومعالجة المعلومات ، إلخ. لكن مهم. - 0xSheepdog
@ 0xSheepdog قد ترغب في توسيع هذه التعليقات إلى إجابة كاملة (بما في ذلك التعريفات أو التفسيرات للمصطلحات الأخرى أيضًا) ، والتي يتم نشرها على هذا النحو. ليس من السئ بالنسبة للسؤال الحصول على إجابات متعددة (ربما باستثناء عندما ينقلون نفس المعلومات بالضبط وبنفس الطريقة). لست متأكداً من السبب في أن الممارسة المهمة لفحص الآلة محلياً تعتمد في الواقع على معرفة / استدعاء واجهتها البشرية الفعلية ، لكن ربما يكون هناك حجة مفادها أنها مهمة للتواصل الفعال مع الزملاء أو استخدام الوثائق. (قد توضح ذلك في إجابتك.) - Eliah Kagan
نظرًا لعلاقتهما الوثيقة (انظر جميع الإجابات الجيدة) ، يتم استخدام هذه المصطلحات في بعض الأحيان بشكل مترادف ، وهو ما ربما كان السبب في جلبك هذا السؤال. - Mark
نرى: ما هو الفرق الدقيق بين "المطراف" ، و "القشرة" ، و "tty" ، و "وحدة التحكم"؟ في يونكس ولينكس. - Piotr Dobrogost


الأجوبة:


الجواب القصير هو ذلك

  • المحطة الطرفية = بيئة إدخال / إخراج النص
  • وحدة التحكم = المحطة المادية
  • شل = مترجم سطر الأوامر

ترتبط وحدة التحكم والمحطة بشكل وثيق. في الأصل ، كانوا يقصدون قطعة من المعدات التي يمكنك من خلالها التفاعل مع جهاز كمبيوتر: في الأيام الأولى من يونيكس ، وهذا يعني مبرقة كاتبةعلى غرار جهاز يشبه الآلة الكاتبة ، ويطلق عليه أحيانًا اسم "آلة القصبة الهوائية" ، أو "tty" اختصارًا. وجاء اسم "المحطة" من وجهة النظر الإلكترونية ، واسم "وحدة التحكم" من وجهة نظر الأثاث. في وقت مبكر جدا في تاريخ يونيكس ، أصبحت لوحات المفاتيح الإلكترونية والشاشات هي المعيار للمطاريف.

في المصطلحات unix ، أ طرفية هو نوع معين من ملف الجهاز الذي ينفذ عددا من الأوامر الإضافية (IOCTLS) وراء القراءة والكتابة. يتم توفير بعض المطاريف بواسطة النواة بالنيابة عن جهاز ، على سبيل المثال مع الإدخال القادم من لوحة المفاتيح والإخراج إلى شاشة وضع النص ، أو مع المدخلات والمخرجات المرسلة عبر خط تسلسلي. يتم توفير أطراف طرفية أخرى ، تسمى أحيانًا أطراف شبه زائفة أو tses شبه زائفة (من خلال طبقة رقيقة من النواة) بواسطة برامج تسمى المحاكيات الطرفية. تتضمن بعض أنواع المحاكيات الطرفية:

  • تطبيقات واجهة المستخدم الرسومية تعمل في نظام النوافذ X: تيرم، غنوم تيرمينال ، كونسول ، تيرميناتور ، إلخ.
  • شاشة و tmux، والتي توفر طبقة من العزلة بين البرنامج ومحطة أخرى
  • سه، والذي يربط محطة على جهاز واحد مع برامج على جهاز آخر
  • توقع، للبرمجة النصية التفاعلات الطرفية

الكلمة طرفية يمكن أن يكون لها أيضًا معنى أكثر تقليدية للجهاز الذي يتفاعل من خلاله جهاز كمبيوتر ، عادةً مع لوحة مفاتيح وشاشة. على سبيل المثال محطة طرفية X هي نوع من العميل رقيقةوهو كمبيوتر خاص الغرض ، والغرض الوحيد منه هو قيادة لوحة المفاتيح ، والعرض ، والماوس ، وفي بعض الأحيان الأجهزة الطرفية الأخرى للتفاعل البشري ، مع تشغيل التطبيقات الفعلية على كمبيوتر آخر أكثر قوة.

ا وحدة التحكم بشكل عام عبارة عن مطراف بالمعنى الجسدي الذي يكون بمعنى تعريف المحطة الأساسية المتصلة مباشرة بالآلة. تظهر وحدة التحكم في نظام التشغيل كأجهزة طرفية (مطبقة على kernel). في بعض الأنظمة ، مثل Linux و FreeBSD ، تظهر وحدة التحكم على أنها عدة أجهزة طرفية (ttys) (يتم تبديل مجموعات المفاتيح الخاصة بين هذه المطاريف) ؛ لمجرد الخلط بين الأمور ، يمكن أن يكون الاسم الذي يطلق على كل وحدة طرفية هو "وحدة التحكم" و "وحدة التحكم الظاهرية" و "الطرفية الافتراضية" وغيرها من الأشكال المختلفة.

أنظر أيضا لماذا "Virtual Virtual Terminal" ، وماذا / لماذا / أين المحطة "الحقيقية"؟.


ا سطر الأوامر هي واجهة يقوم فيها المستخدم بكتابة أمر (يتم التعبير عنه كتسلسل من الأحرف - عادةً اسم أمر يتبعه بعض المعلمات) ويضغط على إرجاع المفتاح لتنفيذ هذا الأمر.

ا الصدف هي الواجهة الأساسية التي يراها المستخدمون عند تسجيل الدخول ، والغرض الأساسي منهم هو بدء برامج أخرى. (لا أعرف ما إذا كانت الاستعارة الأصلية هي أن shell هي البيئة المنزلية للمستخدم ، أو أن shell هو ما تقوم بتشغيله البرامج الأخرى.)

في دوائر unix ، الصدف وقد تخصصت ل يعني أ قذيفة سطر الأوامر، تتمحور حول إدخال اسم التطبيق الذي يريد أن يبدأ تشغيله ، متبوعًا بأسماء الملفات أو الكائنات الأخرى التي يجب أن يعمل التطبيق عليها ، والضغط على مفتاح Enter. عادة لا تستخدم أنواع أخرى من البيئات (مع الاستثناء الأخير الملحوظ لشركة Gnome Shell) كلمة "shell" ؛ على سبيل المثال ، أنظمة النوافذ تنطوي على "مديري النوافذ"و"بيئات سطح المكتب"، وليس" قذيفة ".

هناك العديد من قذائف يونكس مختلفة. أوبونتو الافتراضي شل هو سحق (مثل معظم توزيعات لينكس الأخرى). البدائل الشعبية تشمل zsh (التي تؤكد على السلطة وقابلية التخصيص) و سمك (الذي يؤكد على البساطة).

تتضمن shell-line shells بنيات التحكم في التدفق لدمج الأوامر. بالإضافة إلى كتابة الأوامر في موجه تفاعلي ، يمكن للمستخدمين كتابة النصوص البرمجية. الأكثر شيوعا قذائف لها بناء جملة مشتركة على أساس Bourne_shell. عند مناقشة "برمجة قذيفة"، من المؤكد أن القشرة تقترن دائمًا بقشرة من طراز بورن. بعض القذائف التي تستخدم في كثير من الأحيان للبرمجة لكنها تفتقر إلى ميزات تفاعلية متقدمة تشمل قذيفة كورن (ksh) والعديد رماد المتغيرات. إلى حد كبير أي نظام يشبه يونكس لديه قذيفة على غرار بورن المثبتة /bin/sh، عادة الرماد ، ksh أو باش. على أوبونتو ، /bin/sh هو اندفاع، متغير الرماد (اختيار لأنه أسرع ويستخدم ذاكرة أقل من باش).

في إدارة نظام يونيكس ، للمستخدم الصدف هو البرنامج الذي يتم استدعاؤه عند تسجيل الدخول. تحتوي حسابات المستخدمين العادية على shell سطر الأوامر ، ولكن قد يكون لدى المستخدمين ذوي الوصول المقيد قذيفة مقيدة أو بعض الأوامر المحددة الأخرى (مثل حسابات نقل الملفات فقط).


تقسيم العمل بين المحطة والصدفة ليس واضحًا تمامًا. فيما يلي مهامهم الرئيسية.

  • الإدخال: تقوم المحطة بتحويل المفاتيح إلى تسلسلات تحكم (على سبيل المثال ، اليسار → \e[D). تقوم shell بتحويل تسلسلات التحكم إلى أوامر (على سبيل المثال ، \e[D → backward-char).
  • يتم توفير إصدار الخط وسجل الإدخال والإكمال بواسطة shell.
    • قد تقدم المحطة الطرفية نسختها الخاصة ، والسجل ، والإكمال بدلاً من ذلك ، وترسل فقط خطًا إلى الصدفة عندما يكون جاهزًا للتنفيذ. المحطة الوحيدة المشتركة التي تعمل بهذه الطريقة هي M-x shellفي إيماكس.
  • الإخراج: تقوم shell بإصدار إرشادات مثل "العرض foo"، قم بتحويل لون المقدمة إلى اللون الأخضر" ، "انقل المؤشر إلى السطر التالي" ، إلخ. تعمل المحطة على هذه التعليمات.
  • موجه هو مجرد فكرة قذيفة.
  • لم يطلع shell أبدًا على إخراج الأوامر التي يتم تشغيلها (ما لم تتم إعادة توجيهها). تاريخ الإخراج (scrollback) هو مجرد مفهوم طرفي.
  • يتم توفير النسخ واللصق فيما بين التطبيقات من خلال المحطة الطرفية (عادةً باستخدام الماوس أو تسلسلات المفاتيح مثل السيطرة+تحول+الخامس أو تحول+إدراج). قد يكون للصدفة آلية النسخ واللصق الداخلية الخاصة به أيضًا (على سبيل المثال ، ميتا+W و السيطرة+Y).
  • السيطرة على الوظيفة (تنفيذ البرامج في الخلفية وإدارتها) يتم تنفيذها في الغالب من قبل القشرة. ومع ذلك ، فهي المحطة التي تتعامل مع مجموعات المفاتيح مثل السيطرة+C لقتل الوظيفة الأمامية و السيطرة+Z لتعليقها.

 المعاد تدويرها من يونيكس ولينكس 


120
2017-08-04 10:30



يجب أن أختلف معك على الطرفية كونه مصطلحًا مناسبًا لملف الجهاز الطرفي ، و / أو كود التعامل مع المطراف في النواة (tty ioctls ، raw / cooked ، تحرير الخط الأساسي). terminal (وحدة طرفية) = الأشياء التي تتعامل مع رموز الهروب ، وتحول المفاتيح إلى أحرف ، وتعتمد على شاشة (أو تطبع على ورق / شريط). انظر جوابي لمزيد من التفاصيل. - Peter Cordes
PeterCordes على هذا المستوى من التفاصيل ، لا يوجد تمييز. POSIX يعرف طرفية كمرادف ل جهاز طرفي، بمعنى ملف الجهاز. هذا هو معنى يونكس. يحدث أن تكون الأشياء أكثر من معالجة رموز الهروب ، يتحول المفاتيح إلى أحرف ويرسم على الشاشة (أو ينقل عبر الشبكة ، أو يسجل إلى ملف ، وما إلى ذلك). - Gilles
hrm ، تعتاد محطة نعم في هذا المعنى ، أيضا. بافتراض وجود محاكي طرفي أو منفذ تسلسلي مع جهاز طرفي متصل به ، على أحد طرفي الجهاز الطرفي الذي تقوم النواة بالتعامل معه. معالجة terner kernel (في الوضع المطبوخ) تتعامل فقط مع عدد قليل من رموز التحكم (إشارات على ^ c ، تحرير سطر على ^ u / ^؟ (delete). أحاول رسم خط بين رمز tty وجزء Linux التي تقوم بتطبيق محطة تشبه VT100 على بطاقة رسومات ولوحة مفاتيح USB / ps2 / AT. يمكنك تجميع Linux بدون ذلك ، ولكن ليس بدون tty. - Peter Cordes
PeterCordes في تكوين النواة ، يمكن ترك دعم المطاريف (مفيد لبعض الأنظمة المدمجة النادرة حيث تكون الذاكرة ضيقة للغاية) ؛ انها تسيطر عليها CONFIG_TTY. دعم المحاكيات الطرفية (على نحو أكثر ملاءمة يسمى المحطات الزائفة - "المضاهاة الطرفية" لا تتضمن دائما telnetd ، الشاشة ، المتوقع ، ...) يتم التحكم فيها بواسطة CONFIG_UNIX98_PTYS. يتم التحكم في دعم وضع وضع لوحة مفاتيح الكمبيوتر ولوحة المفاتيح أو ما شابه CONFIG_VT. نرى drivers/tty/Kconfig في مصدر النواة. - Gilles
عفوًا ، لم أجد مصدرًا للنواة حديثًا حول الكذب. تمت إضافة CONFIG_TTY فقط في عام 2012. على أي حال ، نعم نأمل أن يساعد أي شخص يحاول التفاف رأسه حول ما هي قطع مختلفة من اللغز ، وكيف تتلاءم معا. - Peter Cordes


تمثيل مرئي.

طرفية

enter image description here

شيء يمكنك الجلوس عليه ، والعمل مثل رئيسه.

وحدة التحكم

enter image description here

بعض الأجهزة التي لا حفنة من الاشياء.

مثال آخر لوحدة التحكم ، سيكون وحدة تحكم ألعاب الفيديو مثل Super Nintendo [حيث يمكنك لعب Actraiser]

الصدف

enter image description hereenter image description here

أساسا تطبيق لتشغيل الأوامر.

واجهة خط الأوامر]

enter image description hereenter image description here

أساسا أي شيء تقوم بإدخال الأوامر في.


52
2017-08-04 20:09



لقد سرقت فكرتي - كنت سأعطي نفس الإجابة في الأساس. لذلك يمكن أن يكون لديك upvote. والنقطة هي أنه في الوقت الذي تكون فيه هذه المصطلحات مترادفة في الغالب هذه الأيام ، فإن المصطلحات مثل "الطرفية" و "وحدة التحكم" لها أصولها في مفاهيم الحوسبة القديمة. - thomasrutter
مجهود جيد. بسيطة وسهلة - A Umar Mukthar


من مشروع معلومات لينكس:

طرفية : تقنيًا ، تعتبر نافذة طرفية ، يشار إليها أيضًا بمحاكي طرفي ، إطارًا نصيًا فقط في واجهة المستخدم الرسومية (GUI) التي تحاكي وحدة التحكم.

في كلماتنا تطبيق واجهة المستخدم الرسومية ، من حيث يمكننا الوصول إلى وحدة تحكم المستخدم.

وحدة التحكم: لوحة أجهزة القياس تحتوي على عناصر التحكم الخاصة بجهاز كمبيوتر

الصدف : shell هو برنامج يوفر واجهة مستخدم تقليدية للنص فقط لنظام التشغيل Linux وأنظمة التشغيل الأخرى المشابهة لـ Unix

سطر الأوامر : سطر الأوامر هو المساحة الموجودة على يمين موجه الأوامر على وضع عرض النص الكامل على شاشة الكمبيوتر (عادةً CRT أو شاشة LCD) حيث يقوم المستخدم بإدخال الأوامر والبيانات


19
2017-08-04 04:39



"المحطة الطرفية" تعني شاشة نصية فعلية فقط. ما تقوله هو في الواقع "المحاكي الطرفية". - Registered User
RegisteredUser محاكي المحطة الطرفية هو نوع من المحطة الطرفية. الكلمة طرفية لا يقتصر على المحطات المادية (الكلمة المعتادة لذلك هو وحدة التحكم). - Gilles
هذا التعريف من سطر الأوامر خطأ. لا يقتصر سطر الأوامر على وضع عرض النص الكامل. - Gilles
@ Gilles لقد أمسكها من رابط واحد على الويب. لقد ذكرت الإجابة الصحيحة على ما يرام. - Ten-Coin
AgentCool أنا لا أشك في قدرتك على نسخ ولصق. أنا سؤال اختيارك من المصدر. ما تنشره هو مسؤوليتك ، سواء كتبته أم لا. - Gilles


الإجابات هنا تبدو جيدة جدا. ومع ذلك فهي جافة جدا وتقنية لذوقي لذلك سأعطي اتخاذ ..

Terminal هي نهاية شيء ما - حيث تنتهي. على سبيل المثال ، إذا كنت تستقل مترو الأنفاق في بعض المدن ، فإن المحطة التي تنزل منها هي المحطة الطرفية الخاصة بك. أو في المطار ، يعتبر المكان الذي يخرج فيه الناس عندما يصلون إلى بلدهم الوجهة. السبب في أن محطة المطار في الوقت الحاضر هي المكان الذي تحصل فيه على الأشخاص على متن الطائرة والمكان الذي تحصل عليه من الطائرة لأسباب اقتصادية واضحة.

الغرض من الكمبيوتر هو الحصول على البيانات ، والقيام بشيء ما بها ، وبصق النتيجة. وبالتالي فإن المحطة الطرفية هي أي جهاز من حيث يمكنك الحصول على نتيجة للحساب .. شاشة على سبيل المثال. حدث ذلك في أجهزة الكمبيوتر الأولى التي عادةً ما كان لديك الإدخال (لوحة المفاتيح) والإخراج (الشاشة) كجهاز واحد. وبسبب ذلك في الوقت الحاضر تعتبر الأجهزة الطرفية أي أجهزة الإدخال / الإخراج. فأرة ، لوحة مفاتيح ، شاشة ، كاميرا ، كلهم ​​أطراف.

Shellهو شيء OS. على جهاز الكمبيوتر لديك النواة التي على أوبونتو على سبيل المثال هو جزء لينكس. الآن بما أن النواة حقاً منخفضة المستوى يتم توفير غلاف - برنامج يتيح للمستخدم التفاعل مع النواة بطريقة سهلة. هذا ما هو BASH على سبيل المثال.

Console هو (من القاموس)

سطح مستوٍ يحتوي على عناصر التحكم في الجهاز ، للقطعة   من المعدات الكهربائية ، الخ

هذا هو السبب في صناعة الموسيقى المجلس مع جميع المقابض ، أو في مكوك الفضاء طاولة القيادة ، فهي تعتبر جميع لوحات المفاتيح. ويطلق على Super Nintendo و PS2 لوحات المفاتيح تاريخيا منذ أن بدت أجهزة التسلية الأولى مثل الصناديق مع مجموعة من الأزرار عليها.

Command line هو مجرد واجهة - على العكس من واجهة المستخدم الرسومية. أي أن هناك نوعان من الواجهات على جهاز الكمبيوتر. CLI (واجهة سطر الأوامر) وواجهة المستخدم الرسومية (واجهة المستخدم الرسومية). والفرق الرئيسي هو أن أول واحد يحصل على المدخلات من لوحة المفاتيح في حين أن الثاني يحصل على المدخلات من الفأرة.


14
2017-08-06 10:40



ماذا تقصد "عكس واجهة المستخدم الرسومية"؟ - Koray Tugay
مع العكس أعني أن لديك إما واجهة سطر الأوامر (CLI) أو واجهة المستخدم الرسومية (GUI). لقد أوضحت الآن أكثر قليلاً في الإجابة. - Pithikos


لتلخيص جوابي:

الصدف هو البرنامج الذي processes الأوامر و returns الإخراج ، مثل سحق في لينكس.

طرفية هو البرنامج الذي run ا الصدف في الماضي كان الجهاز المادي (قبل أن تكون الأجهزة الطرفية مراقبين بلوحات المفاتيح ، كانت كذلك teletypes) ومن ثم تم نقل مفهومه إلى البرمجيات ، مثل جنوم الطرفية .

لذلك أنا افتح جنوم الطرفية ، نوافذ سوداء تظهر تلك الجري الصدف حتى أتمكن من تشغيل الأوامر الخاصة بي.

وحدة التحكم نوع خاص من المحطة ، كان أيضًا جهازًا جسديًا. سبيل المثال في لينكس لدينا virtual console التي يمكنني الوصول إليها عن طريق مزيج من السيطرة + البديل + F1 إلى F7 .

وحدة التحكم في بعض الأحيان يعني لوحة المفاتيح والشاشة جسديا تعلق على هذا الكمبيوتر.


7
2017-08-05 11:59





وغالبًا ما تسري هذه العبارات معًا ، لذلك يستخدم الأشخاص أحد العبارات للإشارة إلى المجموعة. (أي أنه من الواضح عادةً من السياق أنها تعني نافذة طرفية توفر واجهة لقذيفة سطر الأوامر).

للحفاظ على هذا من الحصول على مهب طويلة ، أنا فقط أقول xterm كدولة احتياطية ل XTerm / Gnome الطرفية / Konsole / mrxvt / الخ / الخ. نفس لباش.

وحدة التحكم له معانٍ أخرى متعددة ، لذا اتركها الآن.

طرفية: شيء يوفر التفاعل البشري مع البرامج من خلال تيار ثنائي الاتجاه من ASCII / UTF8 / أحرف أخرى ، عادةً باستخدام VT100 أو معالجة مماثلة لشفرة الهروب. (على سبيل المثال ، يؤدي استخدام Backspace ، وحذف ، ومفاتيح الأسهم ، وما إلى ذلك إلى إنشاء رموز الهروب. يمكن للبرامج طباعة رموز الهروب لتحريك المؤشر حول الشاشة الطرفية ، والتبديل إلى نص غامق ، و / أو اللون ، أو مسح الشاشة أو التمرير إليها ، إلخ.) في في الماضي ، كان هذا الجهاز مخصصًا في الغالب مع شاشة ولوحة مفاتيح ومنفذ تسلسلي. الآن ، عادة ما يكون برنامجًا مثل xterm.

هناك ملفات جهاز لبرامج القراءة / الكتابة من / إلى المحطات الطرفية ، كما يمكن للمطاريف الافتراضية الوصول إلى الجانب الآخر كملف جهاز. هذا هو المكان الذي يكتب فيه xterm مدخلاتك حتى يتمكن bash من قراءته.

توفر كل محطة طرفية ، بما في ذلك الأجهزة الظاهرية ، تعديلًا أساسيًا للخط عندما يكون في وضع مطهي (عوضاً عن الخام). يتم التعامل مع هذا بواسطة رمز kernel. إنه bash الذي يوفر تحرير الخط الذي يمكنك القيام به باستخدام مفاتيح الأسهم. (حاول تشغيل cat والكتابة إذا كنت ترغب في معرفة ما يشبه تحرير خط تقديم kernel الأساسية. يعمل Backspace ، وبعض الأشياء الأخرى وفقًا لإعدادات stty.)

على الرغم من وجود الكثير من كود النواة خلف الأجهزة الطرفية ، إلا أنه سيتم الإشارة إليه على أنه رمز معالجة طرفية ، وليس كمحطة طرفية بحد ذاتها.

تحرير: لقد أقنعني جيل أن الإشارة إلى tty كمحطة هو الاستخدام السليم. تعتمد محاكيات المحطات الطرفية والبرامج التفاعلية التي يتم توصيلها بمحطة ، على جميع الدلالات الطرفية التي تنفذها النواة. (يتم توحيد معظم هذا السلوك بواسطة POSIX ، وهو نفسه عبر Linux / * BSD / Unix أخرى.) يعتمد محرر نصوص الشاشة الكاملة على سلوك مادة Unix tty بالإضافة إلى التعامل مع رمز الهروب في حركة المؤشر ، والعديد من الميزات الأخرى ، من المحاكي الطرفية.

ومع ذلك ، فإن جهاز VT100 المادي الذي يحتوي على شاشة ولوحة مفاتيح ومنفذ تسلسلي هو مثال لجهاز طرفي. لا يتطلب وجود Unix kernel على الطرف الآخر من المنفذ التسلسلي الخاص به. شيء مختلف تمامًا يمكن أن يرسل له رموز الهروب ونص ASCII ، ويتلقى نفس الشيء منه. سيكون مجرد VT100 ، على الرغم من أنه ليس محطة يونكس. يمثل المحاكي الطرفي بالإضافة إلى دلالات Unix tty الحزمة الكاملة لمحطة Unix التي يعمل عليها عادةً برنامج bash.

سطر الأوامر هو نمط من واجهة المستخدم ، حيث تكتب شيئًا ، ثم اضغط على إرجاع لجعل شيء ما يحدث. كما يستخدم أيضًا كاختصار لقذيفة سطر الأوامر ، مثل bash أو MS-DOS ، ولكن يمكنك أيضًا قول "إنها أداة سطر الأوامر" حول شيء مثل fdisk. بالنظر فقط إلى البرامج التي تستخدم محطة طرفية لواجهة المستخدم ، فإن العائلتين الرئيسيتين هما سطر الأوامر ونصوص الشاشة الكاملة (على سبيل المثال محرر مثل vi أو emacs -nw).

لا تزال برامج سطر الأوامر التي تعمل عادةً على الأجهزة الطرفية تعمل دائمًا مع إعادة توجيه المدخلات والمخرجات إلى الملفات ، ولكن برامج الشاشة الكاملة القائمة على المحطات مثل برامج التحرير أو برامج البريد الإلكتروني تكون تفاعلية فقط ، ولن تعمل.

ا الصدف هو برنامج لبدء برامج أخرى. في سياق Unix ، من الشائع أن تعني shell-line shell (بمعنى: قذيفة Bourne shell أو C shell shell). يمكن أيضًا أن تقرأ shells Unix مدخلاتها من الملفات ، أي نصوص shell. هم لغات برمجة كاملة ، مع المتغيرات ، الحلقات ، والشرطية ، والعديد من البرامج مكتوبة باش (أو فقط مع /bin/sh ميزات قذيفة POSIX ، لمزيد من قابلية النقل). من السهل أيضًا كتابة سريع for i in *.something; do some_program "$i";done  في قذيفة تفاعلية.

وضع كل ذلك معا ، قذيفة مثل باش (أو أيا كان البرنامج الذي بدأته عن طريق تشغيل أمر شل) سوف تتلقى أحرف من /dev/pts/N جهاز المحطة الطرفية بعد xterm يكتب المدخلات الخاصة بك إلى جانبها من محطة الزائفة. اذا ركضت cat، ثم ضرب ^c، قانون tty kernel سيعمل على ^c وأرسل SIGINT إلى عملية المقدمة على تلك المحطة. (لاحظ استخدام طرفية في هذا السياق ، يعني Unix tty ، وليس مُحاكي طرفي أو أي شيء موصولة بمنفذ تسلسلي.) يحدث هذا لأن shell يضع الجهاز في وضع "مطهي" قبل بدء أي برنامج ، مما يعني أن النواة تعمل على بعض التحكم متواليات. (لا يزال كود tty يتعلق بمعالجة رموز الهروب VT100 ، فقط عدد قليل من أكواد التحكم ASCII المنخفضة.) إذا كنت بدلاً من xterm ، أنت تستخدم محطة نصوص وحدة تحكم Linux ، ثم تقوم kernel IS بمحاكاة VT100 ، و التعامل مع كل تلك الأشياء. يمكن تجميع Linux دون دعم محطة النص الظاهري لوحدة التحكم ، ولكن ليس بدون دعم tty.

وحدة التحكم يستخدم في بعض الأحيان كمرادف للمطراف (KDE حتى يحتوي على محاكي طرفي يسمى Konsole).

كما يشير 0xSheepdog ، فإن له أيضًا معنى آخر: أجهزة تفاعل الإنسان المرتبطة محليًا.

في سياق kernel ، تحتوي وحدة التحكم على معنى محدد آخر: إنها المحطة التي تتم كتابة رسائل التمهيد فيها. هذا يمكن أن يكون المنفذ التسلسلي. عادة ، بالطبع ، هو وحدة تحكم النص التي تم تنفيذها بواسطة النواة أعلى برامج التشغيل لأجهزة الرسومات ولوحات المفاتيح USB / ps2 / AT. إذا قمت بتشغيل Linux مع console=tty0 console=ttyS0,115200n8 في سطر الأوامر ، ستحصل على رسائل kernel على الشاشة وعلى المنفذ التسلسلي.

ينفذ لينكس لوحات المفاتيح الافتراضية (/dev/tty1 إلى N). يمكنك تبديل أي واحد من الشاشة / لوحة المفاتيح الفعلية تتحكم فيه السيطرة+البديل+FN. إنشاء توزيعات Linux النموذجية 6 والبدء getty على كل منهم ، لذلك حتى إذا كنت لا تستطيع أو لا تريد أن تبدأ X11 ، يمكنك تسجيل الدخول 6 مرات والوجه بين أمر ، صفحة رجل ، وأي شيء آخر ، دون تشغيل برنامج مثل الشاشة. يتضمن Linux (kernel) محاكي طرفية بنمط VT100 لتوفير واجهة طرفية من خلال الشاشة ولوحة المفاتيح على وحدات التحكم الظاهرية.

المحطات الافتراضية القياسية الستة مع مطالبات تسجيل الدخول هي السبب السيطرة+البديل+F7 يعيدك إلى جلسة X11: يستحوذ X على وحدة التحكم الافتراضية التالية. (يفتح خادم X /dev/input/... مباشرة ، بدلاً من الحصول على مفاتيح الضغط الخاصة بك /dev/tty7، على أية حال.)

لذا ، يعني "التبديل إلى وحدة تحكم نصية" الضغط على السيطرة+البديل+F1 واستخدام هذه المحطة. عندما كانت أجهزة الكمبيوتر بطيئة ولم يكن لديها الكثير من ذاكرة الوصول العشوائي ، قضى بعض الناس الكثير من وقتهم على وحدات التحكم النصية ، لأنها كانت سريعة ، يمكنك تعيين خط لطيف ، وحتى تغيير حجم المحطة الطرفية للحصول على أحرف أصغر ، ولكن لديك أكثر على الشاشة في وقت واحد. البديل+اليسار و البديل+حق التبديل إلى prev / next console. (يعطل X11 هذا عن وحدة التحكم الخاصة به ، بطبيعة الحال ، وترك فقط السيطرة+البديل+FN التحرير والسرد.)

وبالتالي وحدة التحكم هي الوحيدة من هذه المصطلحات التي لا تحتوي على معنى فني محدد جيدًا. لديها زوجين مختلفين. (اعتماداً على الطريقة التي تشعر بها تجاه المطراف المناسب مقابل المطراف بالإضافة إلى التعامل مع tty ، يمكنك القول إن المطراف له معانٍ متعددة.)


7
2017-08-05 09:16



وحدة التحكم وهذا يعني أن المحطة الفعلية "الرئيسية" ليست فقط في سياق kernel. هو نفسه المعنى في /dev/console. وحدة التحكم ليست غامضة بشكل خاص - على الرغم من أنها تستخدم في بعض الأحيان بمعنى أكثر عمومية طرفية، هذا نادر جدا (أندر من طرفية يتم استخدامه على وجه التحديد يعني وحدة تحكم). - Gilles
صحيح ، نعم ، صدى foo | سيطبع sudo tee / dev / console> / dev / null على الشاشة ، إذا كان VT الحالي الخاص بك في وضع النص (بما في ذلك وحدة الإطار framebuffer ، وليس مجرد النص الحرفي VGA). إذا قمت بالتمهيد مع وحدة التحكم على منفذ تسلسلي ، أعتقد أنه سيذهب إلى هناك. يمكنك أن تقول أن / dev / تعزّزها في ملف الجهاز مهما كانت النواة تعالج كنظام وحدة التحكم. لا يحتاج أي شيء آخر في النظام إلى فكرة وجود وحدة tty على الإطلاق (باستثناء أشياء استرداد التمهيد التي تبدأ shell على وحدة التحكم TTY إذا فشل النظام في التمهيد إلى وضع المستخدمين المتعددين. عادةً من initrd) - Peter Cordes
لا يستخدم خادم xorg X (سلاسل / usr / bin / Xorg) / dev / console للحصول على وصول الأجهزة. وهي تستخدم / dev / tty0 و / dev / tty٪ d و / dev / vc /٪ d ، لتضع نفسها على VT الخاصة بها. أنا متأكد من أن Xorg لا تزال تعمل بشكل جيد على جهاز الكمبيوتر الذي تمهيد مع وحدة التحكم kernel على منفذ تسلسلي. وأن المحطات الافتراضية لنمط النص ستظل تعمل. كلما اعتبرت هذا أكثر ، أكثر أنا أميل نحو وحدة التحكم في سياق kernel كمجرد محطة خاصة ، المحددة في وقت التمهيد. (يمكن لـ Linux إخراج رسائل وحدة التحكم الخاصة به في عدة محطات في وقت واحد ، إذا طلبت ذلك.) - Peter Cordes


أعتقد أنه في الأيام الأولى لأجهزة الكمبيوتر التي تشترك في الوقت ، كان لدى كل مستخدم جهاز طرفي (عندما كان بإمكانه الحصول على جهاز واحد!) ، ولكن مشغلي النظام فقط لديهم وحدة تحكم. يمكن استخدام وحدة التحكم في مهام مثل إعادة تشغيل الجهاز أو الحصول على تشخيصات النظام التي لم تكن ممكنة من أطراف المستخدم. كانت وحدة التحكم في غرفة الآلة ، وهي جزء جوهري من الكمبيوتر ، في حين أن المحطات الطرفية يمكن أن تكون بعيدة. تتضمن وحدة التحكم أيضًا مصابيح ومفاتيح أجهزة ، وليس فقط إدخال وإخراج النص.

أود أن أقول إن سطر الأوامر هو منطقة يمكن للمستخدم من خلالها كتابة أمر ، في حين أن shell هو البرنامج الذي يفسر / يطيع هذا الأمر. مصطلح "shell" خاص جدًا بمشتقات يونكس ؛ "سطر الأوامر" أكثر في تقليد Windows / DOS. وعادة ما يطلق على المكافئ في الحاسبات الكبرى "لغة التحكم في الوظيفة".

من الواضح أن هذه الفروق الأصلية أصبحت غير واضحة بمرور الوقت مع تغير التكنولوجيا.


5
2017-08-04 22:35





جرب إجابة قصيرة تتمحور حول المستخدم:

سطر الأوامر - الخط الذي تدخل فيه الأوامر. عادة ما تستخدم لتعلم أنك تحتاج إلى تشغيل شيء ما في نافذة وضع النص (واجهة سطر الأوامر) التي يوفرها نظام التشغيل الخاص بك.

الصدف - البرنامج الفعلي الذي يديره نظام التشغيل لمعالجة الأشياء التي تدخلها command line. ومن هنا الاسم - قذيفة صديقة للمستخدم الأساسية غير ودية OS. ويوفر موجه الأوامر ، مثل $ أو >ويدير أوامره وتطبيقاته الخاصة. أنت دائما تعمل من خلال shell البرنامج ولا تعمل أبدا مع وحدة التحكم أو محطة مباشرة.

وحدة التحكم - هي نافذة يتم فيها تشغيل برامج وضع النص. تقوم هذه النافذة بمعالجة الضغط على المفاتيح ، وتعرف أنه العرض والارتفاع. يمكن أن يكون بملء الشاشة.

طرفية - عبارة عن جهاز مزود بشاشة عرض للبشر يقبل تدفق المشاركات ويعرضها. لا توجد تعليقات للمستخدم حول الارتفاع أو العرض (الاختراق فقط) أو الضغط على مفاتيح لوحة المفاتيح - فقط الأحرف التي تسافر إليها. تقوم المحطة بمعالجة تسلسلات خاصة في هذا الدفق لجعل الأشياء ملونة ، وتنظيف الشاشة والقيام بأشياء أخرى سيئة. تعتبر المحطات غير مقيدة ، لأنه من السهل فوضى الأشياء إذا كان الملف الذي تقوم بتوجيهه إلى الإخراج يحتوي على متواليات خاصة. وهي تحظى بشعبية كبيرة في واجهات تصحيح أخطاء الاتصال والشبكة ، لأنك تحتاج فقط إلى دفق واحد لإرسال المخرجات والتحكم في جهاز الإخراج ويمكنك فقط tap في محادثة دون الحاجة إلى تهيئة أو إنشاء نافذة.

وحدة تحكم تسلسلي - هي وحدة تعالج تدفق المدخلات مثل جهاز طرفية.


3
2017-10-24 10:42