ماهى الهندسة العكسية او Reverse Engineering ؟ وما علاقتها بالبرمجة ؟

 
url
 
الهندسة العكسية ببساطة هى عملية تفتيت شئ ما لعناصره الاولية لمعرفة كيف يعمل بغرض تقليده او تحسين عمله 
 

الهندسة العكسية فى الصناعات القديمة

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

 

الهندسة العكسية فى مجال البرمجيات

ما يهمنا هنا هو استخدامات الهندسة العكسية فى المجال التقنى حيث تستخدم فى تحليل البرامج التى ليس لها كود مصدرى source code بهدف اصلاح مشاكل فى البرنامج او تحسين ادؤه او اكتشاف الفيروسات فيه او بهدف جعل البرنامج متوافق مع بروسيسور غير الذى كتب من اجله او استخدامات اخرى تعد غير مشروعة مثل نسخ برامج او الحصول على كراكات للبرامج ويعد هذا انتهاك لحقوق الملكية .
 

تقوم فكرة عمل الهندسة العكسية فى مجال البرمجة الى تحويل البرنامج الى لغة الالة machine language وهى اللغة البدئية التى يفهما الكمبيوتر بعد ذلك يمكن تحليل وفهم البرنامج والجدال القائم دائمًا حول مشروعية الهندسة العكسية وهل تعد اختراق لحقوق الملكية ام لا ولكن الارجح الان ان بعض اشكال الهندسة العكسية

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

مقالات ذات صلة

كتب بواسطة عمرو العربى

مؤسس مطور

التعليقات

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

*