ما هي الاختلافات بين الأنابيب في نظام التشغيل Windows و Linux ؟

StackOverflow https://stackoverflow.com/questions/192073

سؤال

ما هي الاختلافات بين الأنابيب في نظام التشغيل Windows و Linux ؟

هل كانت مفيدة؟

المحلول

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

ثانيا, في لينكس يمكنك فقط كتابة/قراءة من الأنابيب كما لو كانوا في أي ملف آخر ، باستخدام معيار ملف IO الأساليب.بينما على نظام التشغيل ويندوز, يجب عليك استخدام الخاص 'الأنابيب' الوظائف التي هي جزء من Win32 API.

أنا مثل لينكس طريقة أفضل ، لأنه يتيح لي استخدام أنابيب مع أي التطبيق أريد.على سبيل المثال:

mkfifo pipe.wav
decodeMP3 song.mp3 --out pipe.wav &
encodeAVI video.mpeg pipe.wav --out video.avi

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

نصائح أخرى

وتحت لينكس (و* تاسعا بشكل عام)، "كل شيء هو ملف". يمكنك القراءة / الكتابة / تسعى أنابيب والمآخذ والأجهزة دون قيود، بقدر ما جعل تلك العمليات معنى.

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

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

وانظر أيضا موضوع السابق:

ما يتم تسمية الأنابيب؟

والذي يحتوي بلدي يأخذ والعديد من الشعوب الأخرى

والفرق المهم الآخر

وتحت النوافذ

A | B | C 

وحتى ويتم مع انها الناتج B لم يبدأ القراءة، والشيء نفسه للإخراج B يتم قراءتها من قبل C

* لا شىء السنانير المدخلات والمخرجات معا بحيث C يمكن قراءة الناتج B وB يمكن قراءة إخراج بينما A و B لا يزال قيد

ووالإنتاجية تدور حول نفسها ولكن يظهر الانتاج بشكل أسرع مع * لا شىء.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top