في 7 أكتوبر 2019 ، أصدرت Apple إصدارًا جديدًا من نظام التشغيل Mac ، وهو macOS Catalina. الإصدار 10.15 يحتوي على العديد من التغييرات والتحسينات. واحدة من أهمها هو الرفض الكامل للتطبيقات 32 بت. كمطور لتطبيقات macOS ، ماذا يمكنك أن تفعل؟ هذا صحيح ، انقل التطبيق إلى منصة 64 بت. هل سيعمل التطبيق بشكل صحيح في المرة الأولى؟ ربما. يعتمد على تعقيد وحجم الكود. ولكن ، على الأرجح ، سيواجه المطورون العديد من الأخطاء غير الواضحة التي يمكن اكتشافها مسبقًا باستخدام PVS-Studio.
مقدمة
على الرغم من إمكانية تشغيل التطبيقات ذات 32 بت تقنيًا في بيئة 64 بت ، فقد قررت Apple عدم اتباع هذا المسار واستكمال عملية الانتقال إلى نظام أساسي 64 بت بدأ منذ 10 سنوات. بالنسبة إلى المستخدم ، هذا يعني أنه إذا لم يزعج مطور تطبيقه المفضل بالتبديل إلى النظام الأساسي 64 بت في الوقت المحدد ، فسيتوقف التطبيق ببساطة عن العمل في نظام التشغيل MacOS Catalina المحدث.
هذا لا يعني أن قرار شركة Apple كان غير متوقع: في عام 2018 بالفعل في مؤتمر Worldwide Developers ، قالت الشركة أن macOS Mojave سيكون أحدث إصدار من macOS مع دعم لبرامج 32 بت. من المحتمل أن معظم مطوري التطبيقات الشائعة قد تم ترحيلهم بنجاح إلى 64 بت لإصدار macOS Catalina ، أو أنهم يكملون عملية الانتقال.
تجدر الإشارة إلى أنه مع البساطة الواضحة ، تحتوي ترجمة التطبيق على منصة 64 بت على الكثير من "العثرات". وإذا تمت كتابة جزء من التطبيق باستخدام لغة C ++ ، فقد يحتاج المطور إلى فهم عميق لآليات العمل مع الذاكرة والمؤشرات ، بالإضافة إلى مراعاة العديد من الفروق الدقيقة غير الواضحة. في هذه الحالة ، من المفيد استخدام أداة تسمح لك بالتحقق من صحة الكود بدقة مع مراعاة الانتقال من منصة 32 إلى 64 بت. على سبيل المثال ، محلل الكود الثابت PVS-Studio.
تشخيص 64 بت
يحتوي محلل PVS-Studio على
مجموعة خاصة
من التشخيصات لهذه الحالة. بشكل عام ، تم إنشاء PVS-Studio كأداة أصلاً لغرض تحليل كود C / C ++ عند البحث عن أخطاء الترحيل التي تبلغ 64 بت ، وتم تطويرها لاحقًا فقط في محلل للأغراض العامة: تمت إضافة لغات C # و Java ، أصبح من الممكن البحث عن نقاط الضعف المحتملة ودعم المعايير تشفير آمن (MISRA ، على سبيل المثال) وأكثر من ذلك.
خلال الفترة الماضية ، اكتسبنا خبرة كبيرة في قضايا الانتقال إلى منصة 64 بت ، وتم كتابة المقالات. أحد المقالات الجيدة حول هذا الموضوع: "
مجموعة من أمثلة أخطاء 64 بت في برامج حقيقية ." هذا المقال قديم جدًا ، لكن المشكلات الموضحة فيه لا تفقد أهميتها اليوم. أوصي بقراءته ، خاصة إذا كنت تخطط أو تعمل بالفعل على تحويل تطبيقاتك إلى 64 بت (سواء أكانت تطبيقات C ++ لنظام التشغيل macOS أو أي نظام تشغيل آخر).
يمكنك تمكين تحذيرات 64 بت على النحو التالي:
ويندوز / البصرية ستوديوفي نافذة عرض التنبيه ، يوجد زر لتمكين المجموعة الكاملة لتشخيصات 64 بت:
لينكس / ماكعند بدء تشغيل المحلل من وحدة التحكم ، من الضروري تمكين تشخيصات 64 بت في كل من المحلل وفي منشئ التقارير:
pvs-studio-analyzer analyze ... -a 5 ... plog-converter ... -a "64:1,2,3"
استنتاج
حسنًا ، بالطبع ، لا شيء يمنعك من
تنزيل وتجربة محلل PVS-Studio على الكود. حظا سعيدا في المعركة ضد 64 بت وغيرها من الأخطاء!

إذا كنت ترغب في مشاركة هذه المقالة مع جمهور يتحدث الإنجليزية ، فالرجاء استخدام الرابط الخاص بترجمة: سيرجي خرينوف.
لم يعد نظام التشغيل MacOS 10.15 يدعم تطبيقات 32 بت. ماذا يمكنك ان تفعل؟ .