- यह लेख PROJEKT: OVERFLOW नाम के एक RISC-V असेंबली टेबलटॉप बोर्ड गेम का परिचय देता है.
- यह गेम लेखक की बेटी को buffer overflow को मज़ेदार और इंटरैक्टिव तरीके से सिखाने के लिए बनाया गया था.
- इस गेम में मेमोरी में छोटा shellcode बनाना और buffer overflow का उपयोग करके उस तक jump करना शामिल है, ताकि प्रतिद्वंद्वी को
game_over() फ़ंक्शन में भेजा जा सके.
- सभी खिलाड़ी एक ही मेमोरी साझा करते हैं और एक ही प्रोग्राम चलाते हैं, और बारी-बारी से 10-10 instructions चलाते हैं.
- गेम में exception handler सेट करना या monkey patching जैसी दूसरी mechanisms और strategy layers भी शामिल हैं.
- यह गेम अकेले online खेला जा सकता है या दोस्तों के साथ भी, और इसका printable version भी उपलब्ध है.
- गेम में अलग-अलग difficulty levels के अनुसार विभिन्न victory conditions शामिल हैं.
- लेखक 0 से 4095 तक के machine codes वाले मान्य गेम instructions की सूची भी देता है (RV32 JRI
a0,a4,a5,sp,ra पर काम करता है).
- लेखक ने Python, C, machine code, और UNIX commands सिखाने के लिए इसी तरह के शैक्षणिक गेम भी बनाए हैं.
- लेखक गेम के development और testing में योगदान देने वाले कई लोगों को धन्यवाद देता है.
- लेखक feedback या bug reports के लिए संपर्क जानकारी भी देता है.
- लेख में एक assembly guide भी शामिल है, जिसमें विभिन्न RISC-V assembly tutorials और resources के links हैं.
- लेखक RISC-V assembly सीखने के लिए अभ्यास प्रश्नों और code examples की सूची भी देता है.
- गेम का design minimalistic है, और print करने में उपयोगिता तथा लागत-कुशलता पर केंद्रित है.
- लेखक गेम में syntax highlighting का उपयोग नहीं करता, ताकि खिलाड़ी code के अलग-अलग elements के महत्व के बारे में स्वयं निर्णय ले सकें.
1 टिप्पणियां
Hacker News टिप्पणियाँ