استخدام برنامج تشغيل 64 بت في برنامج 32 بت. شبابيك

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

  •  03-07-2019
  •  | 
  •  

سؤال

وهذه ليست سوى مسألة البرمجة في منتصف الطريق. أولا وقبل كل شيء لديك بطاقة PCI-Express و 32/64 السائقين قليلا. نظام التشغيل الهدف يجب أن يكون نظام ويندوز 64 بت. قرأت أنه في ظل Vista64 جميع السائقين يجب أن تكون مصدقة 64 بت السائقين. هل هذا التقييد العام تحت أنظمة التشغيل 64 بت و ينطبق ذلك أيضا على "XP 64" أو أي نظام لينكس؟

وهكذا على سبيل التبسيط دعونا نقول I استخدام برنامج تشغيل 64 بت لبطاقتي PCIe لتحت Vista64 ولديك مجموعة من 64 دلس قليلا لاستخدام وظيفة البطاقات. على الجانب الآخر هناك، تركة 32 برنامج إكس الشيء الكبير الذي يحتاج الى استخدام جهاز PCIe ل. أن تحويل البرنامج إلى 64 بت يكون هناك جهد كبير حقا.

وذلك ما يمكن القيام به لتحقيق ذلك برنامج 32 بت و 64 بت سائق معا؟ قرأت أن خلط 32/64 ثنائيات قليلا ودلس غير ممكن على الإطلاق ولكن هذا أمر يصعب تصديقه بالنسبة لي. أنا متأكد من أنك يمكن طباعة وثيقة تحت Vista64 من داخل التطبيق 32 بت و ويندوز التفاف بطريقة ما هذه في جميع أنحاء لبرنامج تشغيل طابعة 64 بت.

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

المحلول

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

إذا كنت تستخدم برنامج التشغيل عن طريق API ويندوز، ثم لا ينبغي أن يكون هناك أي مشكلة. ويندوز قيام 32 - ترجمة 64 بت في نواة <>. إذا كنت تحاول تحميل برنامج تشغيل داخل العملية الخاصة بك، التي ربما لن يكون ممكنا. كما يقول ديرك سيكون لديك لتشغيله داخل العملية الخاصة بها والتواصل من خلال خادم COM. لست متأكدا ما الأطواق سيكون لديك من خلال القفز إذا كان لديك لتشغيل برنامج التشغيل الخاص بك في مستوى التنفيذ-امتياز العالي وتريد إجراء مكالمات إلى أنه من وضع المستخدم.

ونأمل دلس 64 بت الخاص توفر API 32 بت، أو يقدم Windows واجهة سائق القياسية (اذا كان جهاز I المشترك / O مثل عرض أو بطاقة الشبكة).

نصائح أخرى

هل تطبيق 32 بت الخاص بك الاتصال مباشرة السائق؟ (انا التخمين جهاز محاكاة للسائق!)

والطريقة الوحيدة للتواصل بين دلس 32 بت و 64 بت لكتابة الخادم COM التي تدير الاتصالات (اقرأ: التفاف سواء المكالمات التطبيقات أو ردود برنامج تشغيل 64 بت). في ما بين

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

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

ما المقصود به عدم التوافق تقرأ عنه هو أن مجالس 32 و 64 بت لا يمكن أن تكون جزءا من نفس التطبيق - تطبيق ديه لاستهداف واحد أو الآخر، على الرغم من تطبيق 32 بت سوف <م> عام تشغيل غرامة على ويندوز إلى x64 باستخدام WOW64، والذي يعمل فقط كمترجم.

هل تعاني من مشاكل في الوقت الراهن، أم أنك مجرد طلب نظريا؟

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