Category: التطوير

إعادة هيكلة التعليمات البرمجية في C++: أفضل التقنيات والممارسات

2024-12-13

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

مأزق مشروع جيت بشأن دمج لغة البرمجة راست

2024-12-13

يُعاني مشروع جيت من جدل محتدم حول دمج لغة البرمجة راست. يدعم أنصار راست أن مميزاتها في أمان الذاكرة وسهولة إعادة الهيكلة ستعزز أمان جيت وكفاءة تطويره. لكن المعارضين يخشون أن يؤثر دمج راست على دعم منصات محددة مثل NonStop، مما قد يحد من استدامة جيت على المدى الطويل. انتشار NonStop في القطاع المالي، واعتمادها على جيت، ونقص مترجم راست لهذه المنصة، كلها عوامل تُعقد المشكلة. لم يُفضِ النقاش إلى نتيجة حاسمة، تاركًا مشروع جيت أمام خيار صعب بين الحفاظ على دعم واسع للمنصات وتحسين الأمان وكفاءة التطوير.

إصدار Trinity Desktop Environment R14.1.3: خفيف الوزن، وكفاءة عالية، ومثالي للأجهزة القديمة

2024-12-13

أصدر فريق مشروع Trinity Desktop Environment (TDE) الإصدار R14.1.3، وهو بيئة سطح مكتب خفيفة الوزن ومجانية مصممة للمستخدمين الذين يفضلون تجربة أنيقة وفعالة. يدعم هذا الإصدار توزيعات Linux و BSD و DilOS المختلفة، ويتميز بمتطلبات نظام منخفضة، مما يجعله مثاليًا للأجهزة القديمة. يتضمن R14.1.3 العديد من التحسينات، مثل دمج واجهة برمجة تطبيقات بوابة سطح المكتب XDG، ووحدة جديدة لإعدادات لوحة اللمس، ومواضيع جديدة ومخططات ألوان، ودعم لتطبيقات ولغات برمجة متنوعة مثل Python 3.13. يحث المشروع على التبرعات لدعم استمرارية تطويره.

استبدال التعليمات البرمجية السريع في Elixir/Erlang: عمليات نشر بدون توقف

2024-12-13

تتناول هذه المقالة إمكانيات استبدال التعليمات البرمجية السريع في Elixir/Erlang، مما يسمح بتحميل وتنزيل التعليمات البرمجية أثناء وقت التشغيل دون الحاجة إلى إعادة تشغيل النظام لتحديثات التطبيقات. يوضح مثال بسيط لوحدة KV الاستبدال السريع يدويًا، بينما يتم تقديم أوامر c/1 و r/1 في iex وأداة Relups لتسهيل إدارة التطبيقات وتحديثات الإصدارات. تشرح المقالة تطبيقات Erlang والإصدارات و appups و relups، مفصّلةً استخدام أداة Distillery لإنشاء إصدارات التطبيقات وإصدارات التحديث، مما يحقق في النهاية عمليات نشر بدون توقف ويمنع انقطاعات الخدمة.

ترويض نماذج اللغات الكبيرة: دليل عملي لتجنب المشاكل

2024-12-12

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

سترايب تحقق في ارتفاع غير متوقع لأخطاء DNS: تحقيق في شبكة معقدة

2024-12-12

واجهت شركة سترايب مؤخراً ارتفاعاً غير متوقع في أخطاء DNS. تتناول هذه المقالة بالتفصيل كيف استخدمت أدوات مثل Unbound و tcpdump و iptables لتحديد السبب الجذر. أظهر التحقيق أن مهمة Hadoop التي تحلل سجلات الشبكة كانت تقوم بالعديد من عمليات البحث العكسي لـ DNS (سجلات PTR) ، مما أدى إلى تضخيم حركة المرور بسبب المحاولات المتكررة التي تجاوزت حدود مُحلل VPC من AWS. قامت سترايب بحل المشكلة عن طريق ضبط تكوينات إعادة توجيه Unbound لتوزيع الحمل عبر مضيفات Hadoop الفردية. تبرز هذه الحالة أهمية المراقبة القوية ، واستكشاف الأخطاء وإصلاحها متعدد الأوجه ، واستراتيجيات التعامل مع ارتفاعات حركة المرور في الأنظمة عالية التوفر.

حلقة For المتواضعة في Rust: الأداء وسهولة القراءة

2024-12-12

تتناول هذه المقالة المقايضات بين حلقة `for` البسيطة ونهج البرمجة الوظيفية مثل `map` و `fold` في Rust، مع مراعاة كل من الأداء وسهولة القراءة. من خلال معايير مقارنة طرق مختلفة في عمليات المتجهات والمتجهات المتداخلة، يجد الكاتب أن `map` تتفوق غالبًا على حلقات `for` في التحويلات البسيطة، مما يوفر أسلوبًا أكثر وضوحًا. ومع ذلك، بالنسبة للسيناريوهات الأكثر تعقيدًا، مثل جعل المتجهات المتداخلة مسطحة أو معالجة الأخطاء، تُظهر حلقات `for` ميزة أداء كبيرة وتُبقي على وضوح أكبر للرمز. يدافع الكاتب عن نهج عملي، واختيار أفضل أداة للمهمة بدلاً من تفضيل البرمجة الوظيفية بشكل أعمى.

التطوير الأداء حلقة For

وردبريس ضد رأس المال الاستثماري: معركة من أجل مستقبل المصدر المفتوح

2024-12-12

تخوض منصة ووردبريس، نظام إدارة المحتوى الرائد عالميًا، معركة ضارية ضد شركة سيلفر ليك للاستثمار في رأس المال الخاص، وشركة WP Engine التي تستثمر فيها. بعد حصولها على استثمار ضخم، قامت WP Engine، وهي شركة تعمل لتحقيق الربح مبنية على ووردبريس، باستغلال علامة ووردبريس التجارية بشكل مفرط مع تقديم مساهمات ضئيلة للمجتمع مفتوح المصدر. وبعد فشل عدة محاولات للتواصل، اتخذ الرئيس التنفيذي لشركة Automattic، ومؤسس ووردبريس المشارك، مات مولينويج، إجراءات، حيث قيّد وصول WP Engine إلى موارد WordPress.org للدفاع عن مجتمع المصدر المفتوح ومستقبل ووردبريس. يبرز هذا الصراع التضارب الجوهري بين مجتمعات المصدر المفتوح وشركات رأس المال الاستثماري التي تسعى لتحقيق أقصى قدر من الربح، وهو ما يمثل تحذيرًا من مخاطر عدم الاهتمام بالصحة طويلة الأمد لمشاريع المصدر المفتوح.

لوحة مفاتيح افتراضية خفيفة الوزن: Unexpected Keyboard تصل إلى Android

2024-12-12

Unexpected Keyboard هي لوحة مفاتيح افتراضية خفيفة الوزن لنظام Android، مصممة للمطورين. تتمثل ميزتها الرئيسية في القدرة على كتابة المزيد من الأحرف عن طريق التمرير نحو زوايا المفاتيح. صُممت في الأصل لمستخدمي Termux، وهي مناسبة الآن للاستخدام اليومي. التطبيق خالٍ من الإعلانات، ولا يطلب أي طلبات شبكة، وهو مفتوح المصدر. يمكن للمستخدمين الوصول إلى رموز خاصة عن طريق التمرير إلى زوايا المفاتيح؛ على سبيل المثال، التمرير إلى الزاوية السفلية اليسرى يفتح الإعدادات. تطبيقات مشابهة تشمل Calculator++.

قواعد غير معلنة لبرامج المحطة الطرفية: استعراض لمدة 20 عامًا

2024-12-12

يلخص هذا المقال خبرة المؤلف التي امتدت لعشرين عامًا في التعامل مع برامج المحطة الطرفية، مستخلصًا قواعد سلوك شائعة، وإن لم تكن رسمية. تتناول هذه القواعد استجابات البرامج لأوامر Ctrl-C و Ctrl-D وزر 'q'، واستخدام الألوان، ودعم اختصارات لوحة المفاتيح readline، وإخراج الأنابيب. يلاحظ المؤلف أنه على الرغم من عدم إلزامية هذه القواعد، إلا أن فهمها يساعد على التنبؤ بسلوك برامج المحطة الطرفية، ويقلل من منحنى التعلم. يستخدم المقال أمثلة لتحليل قابلية تطبيق هذه القواعد واستثناءاتها، مشددًا على أهمية التمييز بين مسؤولية البرنامج نفسه وسلوك نظام التشغيل الافتراضي.

مهندس ينفذ آلة خلوية قابلة للعكس أحادية البعد باستخدام عمليات بت

2024-12-12

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

صعود وسقوط شركة أشتون تيت: ملحمة dBASE

2024-12-12

شركة أشتون تيت، لاعب بارز في ثورة الحاسوب الشخصي في الثمانينيات، ارتقت إلى الشهرة بفضل برنامج قواعد البيانات الخاص بها، dBASE. صمم البرنامج في البداية من قبل واين راتليف باسم فولكان، ليصبح بسرعة معيارًا لأنظمة CP/M، ثم ازدهر مع صعود جهاز الحاسوب الشخصي من IBM. ساهمت واجهته سهلة الاستخدام وميزاته القوية في دفع أشتون تيت إلى طرح أسهمها للاكتتاب العام وتحقيق نجاح كبير. ومع ذلك، أدت الصراعات اللاحقة للشركة مع تطوير dBASE III، وتزايد المنافسة، والمشاكل الداخلية إلى استحواذ بورلاند عليها في النهاية. هذه القصة تفصل إرث dBASE، وصعود وسقوط أشتون تيت، وتقدم رؤى قيّمة حول ديناميكيات صناعة البرمجيات.

إضافة متصفح من جيثب تلخص مقالات هاكر نيوز باستخدام نماذج اللغات الكبيرة

2024-12-12

يقدم مشروع جيثب `hn-tldr-extension` إضافة متصفح تستخدم نماذج اللغات الكبيرة (LLMs) من OpenAI و Anthropic لتلخيص مقالات هاكر نيوز بسرعة. يُمكن للمستخدمين تقديم مفاتيح API الخاصة بهم لتمكين زر 'تلخيص' على صفحات HN، مما يوفر ملخصات موجزة للمقالات. شفرة الإضافة مفتوحة المصدر وتدعم متصفحات مثل فايرفوكس.

إطلاق مكتبة lfi عالية الأداء للتكرار المتزامن

2024-12-12

lfi هي مكتبة برمجة وظيفية خفيفة الوزن تركز على التكرار المتزامن، وغير المتزامن، والمتزامن. تفوقت بشكل ملحوظ على مكتبات مثل p-map و p-filter في التكرار المتزامن من خلال معالجة كل عنصر بشكل مستقل، مما أدى إلى مكاسب كبيرة في الأداء. كما تتميز lfi بتقييم كسول، حيث تقوم بالعمليات فقط عند الحاجة لتوفير الذاكرة، وهي صغيرة الحجم، مما يجعلها قابلة للتحسين بسهولة باستخدام tree shaking. تصميم واجهة برمجة التطبيقات النظيف، إلى جانب دالة pipe، يؤدي إلى رمز أكثر قابلية للقراءة وسهولة الصيانة.

إصدار مواصفات Kubernetes v1.32: دليل مرجعي شامل للموارد

2024-12-12

أصدر موقع kubespec.dev دليلاً مرجعيًا ووثائقًا لمواصفات Kubernetes الإصدار v1.32، حيث يوفر وثائق شاملة لجميع الموارد والخصائص والأنواع والأمثلة المدمجة. يغطي الدليل أعباء العمل، والعناقيد، والشبكات، والتكوين، والتخزين، والإدارة، والتحكم في الوصول، مما يتيح للمستخدمين إمكانية العثور على وظائف Kubernetes وفهمها بسرعة. المشروع مفتوح المصدر ويقبل المساهمات.

التطوير وثائق

نماذج ذاكرة لغات البرمجة: التحديات والحلول في البرمجة المتزامنة

2024-12-12

تتناول هذه المقالة بالتفصيل نماذج ذاكرة لغات البرمجة، وتحديداً سلوك الذاكرة المشتركة في البرامج متعددة الخيوط. باستخدام برنامج بسيط يشبه لغة C كمثال، توضح المقالة كيف يمكن أن تؤدي تحسينات المُجمع إلى نتائج غير متوقعة، مثل حالات التنافس بين الخيوط. ولمعالجة هذا، تُقدم لغات البرمجة الحديثة متغيرات ذرية وعمليات ذرية لضمان مزامنة الخيوط وتجنب حالات التنافس. تقارن المقالة نماذج ذاكرة Java و C++ و Rust ولغات أخرى، وتحليل نقاط القوة والضعف والتطور، وتشير إلى التحديات المتبقية في تحديد نماذج الذاكرة رسميًا.

بيتر سولنيكا، عضو فريق هانامي الرئيسي، يعلن تقاعده

2024-12-12

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

إثبات النظرية الأخيرة لفرمات: الحواسيب تواجه تحديًا رياضيًا

2024-12-12

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

Jujutsu: نظام تحكم في الإصدارات ثوري

2024-12-12

يستخدم الكاتب يوميًا Jujutsu، وهو نظام تحكم في الإصدارات يعتمد على Git، ويُوصي به بشدة. على عكس بدائل Git المبسطة الأخرى، يركز Jujutsu على تحسين سير عمل المستخدمين المتقدمين، خاصةً في تبسيط تحرير السجل. يروي الكاتب تجربة شخصية تُظهر سهولة استخدام Jujutsu في تعديل عمليات الالتزام السابقة، مما يلغي الحاجة إلى أوامر Git المعقدة. على الرغم من وجود بعض العيوب في Jujutsu، مثل عدم دعم git send-email ومتطلبات اتفاقية ترخيص المساهمين من Google، إلا أن الكاتب لا يزال يستخدمه يوميًا للمشاريع الشخصية.

قانون باركنسون: تحديد المواعيد النهائية، وتعزيز الكفاءة

2024-12-12

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

الوصول إلى قاعدة بيانات مؤقتة باستخدام GitHub Actions و S3

2024-12-12

تقدم هذه المقالة طريقة ذكية لتشغيل قاعدة بيانات مؤقتة باستخدام GitHub Actions للحوسبة المؤقتة وتخزين كائنات S3 للثبات. قم بإنشاء قاعدة بيانات متوافقة مع MySQL عند الطلب، وقم بتخزين البيانات في S3، وقم بإزالتها تلقائيًا عند الانتهاء، مما يلغي التكاليف المستمرة. يسمح النفق الآمن بالوصول العام لاختبارات التكامل، والعروض التوضيحية، أو تطوير المدى القصير. هام: هذا النهج مناسب فقط للمهام قصيرة المدى؛ فهو غير مُصمم لخدمات قواعد البيانات طويلة الأمد.

التطوير قاعدة بيانات

تخزين الأوقات للأحداث البشرية: أفضل الممارسات والتحديات

2024-12-12

تتناول هذه المدونة أفضل الممارسات لتخزين أوقات الأحداث في مواقع الويب الخاصة بالأحداث. يجادل الكاتب بأن تخزين وقت UTC مباشرةً يؤدي إلى فقدان معلومات بالغة الأهمية، مثل نية المستخدم الأصلية والموقع. والنهج الأفضل هو تخزين الوقت المقصود من قِبل المستخدم وموقع الحدث، ثم اشتقاق وقت UTC. أمثلة مثل خطأ المستخدم، وتعديلات المناطق الزمنية الدولية، وتحديث DST من Microsoft Exchange لعام 2007 توضح أهمية تخزين الوقت المقصود من قِبل المستخدم. يوصي الكاتب بتصميم واجهة مستخدم واضحة وسهلة الاستخدام لمساعدة المستخدمين على تحديد أوقات ومواقع الأحداث بدقة، مع التأكيد على أهمية الحفاظ على نية المستخدم الأصلية لتجنب الأخطاء الناتجة عن تغييرات المناطق الزمنية.

مطور ينتقد مزودي OAuth لعيوب واجهة برمجة التطبيقات

2024-12-12

انتقد مطور برمجيات علنًا العديد من مزودي OAuth (GitHub و Facebook و TikTok و Strava و Naver وغيرهم) بسبب العديد من عدم الاتساق في واجهات برمجة التطبيقات الخاصة بهم. وتضمنت المشاكل رموز الحالة غير الصحيحة، واستجابات الأخطاء غير القياسية، وتسمية المعلمات غير المتسقة، وتنسيقات انتهاء صلاحية الرمز المميز المعيبة. وحث المؤلف هؤلاء المزودين على تصحيح هذه المشكلات، معربًا عن ارتباك خاص بشأن خيارات التصميم الخاصة بـ Naver. كما سلط الضوء على الافتقار إلى دعم مصادقة HTTP الأساسية، موضحًا لاحقًا أنه على الرغم من كونها اختيارية في OAuth 2.1، إلا أن عدم دعم PKCE لدى معظم المزودين يجعلها غير متوافقة مع أي من المواصفات.

رسومات نقطية عالية الدقة مع كومودور 64 بي إس آي سي 2.0: روتين مسح سريع للشاشة

2024-12-12

تشرح هذه المقالة كيفية التعامل بكفاءة مع رسومات نقطية عالية الدقة في بي إس آي سي 2.0 الخاص بجهاز كومودور 64، مع التركيز على روتين مسح سريع للشاشة. ويشير الكاتب إلى أن بي إس آي سي الأصلي يفتقر إلى أوامر معالجة مباشرة للنقاط، مما يجعل عملية المسح التقليدية بطيئة. ويقدم حلاً ذكياً يستخدم آلية تخزين السلاسل في بي إس آي سي: سلاسل طويلة مملوءة بـ CHR$(0) تقوم بالكتابة فوق ذاكرة النقاط، مما يحقق مسحاً سريعاً. وتُوضّح هذه التقنية من خلال مثال لرسم دالة جيب التمام.

WXT: إطار عمل جيل جديد لامتدادات الويب لتسريع التطوير

2024-12-12

WXT هي أداة مفتوحة المصدر تُحدث ثورة في تطوير امتدادات الويب. تدعم Chrome و Firefox و Edge و Safari وجميع المتصفحات القائمة على Chromium، وتُنشئ امتدادات Manifest V2 و V3 من قاعدة بيانات واحدة. بفضل تقنية HMR فائقة السرعة، ونقاط الدخول القائمة على الملفات، ودعم TypeScript الافتراضي، يوفر WXT عمليات استيراد تلقائية ونشرًا آليًا. وهو يعمل مع أي إطار عمل أمامي ومتوافق مع أي مكوّن إضافي Vite، ويحتوي على نظام وحدات وتنزيل كود بعيد، مما يُعظم سرعة التطوير ويسمح للمطورين بالتركيز على الميزات بدلاً من نصوص البناء.

أخطاء مُجمِّع C++: أخطاء لا معنى لها من إعلان دالة

2024-12-12

واجه مطور أثناء إضافة دعم XAML إلى تطبيق C++ سلسلة من أخطاء المُجمِّع بمجرد تضمين ملف الرأس winrt/Windows.UI.Xaml.h. نشأت الأخطاء مما بدا وكأنه إعلان دالة عادي: `template struct consume_Windows_UI_Xaml_IExceptionRoutedEventArgs { [[nodiscard]] auto ErrorMessage() const; };` كان السبب الرئيسي هو وجود ماكرو موجود مسبقًا يسمى ErrorMessage في مشروع المطور، مما تسبب في تعارض مع اسم الدالة. أنشأ هذا الماكرو كائن ErrorMessageString وأعاد مؤشرًا إلى سلسلة رسالة خطأ. أدت حدود الماكرو غير المحددة إلى تفسير المُجمِّع الخاطئ لإعلان الدالة على أنه استدعاء ماكرو، مما أدى إلى أخطاء مثل "عدد غير كافٍ من الوسائط". كان الحل يتضمن تعطيل الماكرو باستخدام #pragma undef قبل تضمين الرأس أو إزالة الماكرو بالكامل واستبداله بدالة مضمنة.

QEMU يكتسب تسريع Vulkan مع تحديث برنامج تشغيل VirtIO GPU

2024-12-12

يدعم إصدار QEMU 9.2.0 والإصدارات الأحدث الآن تسريع Vulkan لـ VirtIO-GPU بفضل تصحيحات Venus. يمثل هذا تقدماً كبيراً في عرض الرسومات Vulkan لآلات QEMU الظاهرية. تشرح المقالة عملية الإعداد بالتفصيل، بما في ذلك تثبيت الحزم اللازمة (نواة لينكس 6.13+، QEMU 9.2.0+، برامج تشغيل Vulkan، إلخ)، وتجميع QEMU من المصدر، وإنشاء صورة آلة ظاهرية. في حين أن virt-manager لا يدعم حاليًا تكوين Vulkan، إلا أن معلمات سطر الأوامر توفر حلًا بديلاً. كما توفر المقالة نصائح لاستكشاف الأخطاء وإصلاحها، بالإضافة إلى ملاحظات حول القيود الحالية في virt-manager وlibvirt.

التطوير

اختراق في تحليل قابلية الوصول لنظام أسماء النطاق

2024-12-12

قدم الباحثون أول إجراء قرار للتحقق من نظام أسماء النطاق (DNS) ، حيث حددوا تعقيده على أنه 2ExpTime. تُدوّن الدراسة دلالات DNS رسميًا وتستخدم تجريدًا جديدًا قائمًا على لغات قابلة للاختبار بالبادئة الموجبة ، مما يقلل من مشكلة التحقق من DNS إلى مشكلة التحقق من أنظمة pushdown. يُنمذج هذا النهج بفعالية نواقل الهجوم في DNS ، مثل هجمات التضخيم و blackholing بإعادة الكتابة ، مما يوفر أساسًا نظريًا جديدًا لضمان أمان DNS وموثوقيته.

1 2 3 4 5 6 8 Next →