ABOUT
এই সিস্টেম সম্পর্কে
এটা কী
এটা একটা Computer Science foundations curriculum — কোনো tutorial blog নয়, framework শেখার কোর্স নয়। উদ্দেশ্য একটাই: কম্পিউটার আসলে কীভাবে কাজ করে, সেটা প্রথম নীতি থেকে বোঝা।
১৬টা মডিউল, ৫৭টা প্রজেক্ট, আনুমানিক ১৯০০ ঘণ্টার পথ — transistor থেকে শুরু করে distributed systems আর research methodology পর্যন্ত।
শেখানোর দর্শন
প্রতিটা topic একই পথে যায়:
Physical reality → abstraction → implementation → theory → experimentআর প্রতিটা concept-এ এই নয়টা প্রশ্নের উত্তর থাকে:
- এটা কোন সমস্যার সমাধান?
- কেন আবিষ্কার হলো?
- ভেতরে আসলে কী ঘটে?
- কীভাবে implement করা হয়?
- কী abstraction দেয়?
- সেই abstraction-এর নিচে কী আছে?
- সীমাবদ্ধতা কী?
- নিজে কীভাবে যাচাই করব?
- বাস্তব সিস্টেমে কোথায় আছে?
ভাষা নিয়ে
ব্যাখ্যা বাংলায়, কিন্তু technical termইংরেজিতেই। কারণ kernel-কে "অন্তঃকরণ" বা thread-কে "সুতা" বললে শেখা সহজ হয় না — বরং documentation, paper আর Stack Overflow পড়া কঠিন হয়ে যায়।
Process হলো running program-এর একটি execution instance, যার নিজস্ব virtual address space আছে।
এভাবে — অপ্রয়োজনীয় অনুবাদ ছাড়া।
কীভাবে ব্যবহার করবেন
- ক্রম মানুন। Level 0 থেকে শুরু করুন। লাফ দিলে নিচের স্তর ফাঁকা থেকে যাবে।
- Experiment বাদ দেবেন না। প্রতিটা লেসনে যে command বা code আছে, সেটা নিজের মেশিনে চালান। পড়ে বোঝা আর চালিয়ে দেখার মধ্যে যে ফাঁক, সেখানেই আসল শেখা।
- প্রশ্নের উত্তর নিজে ভাবুন, তারপর খুলুন। উত্তর দেখে "হ্যাঁ জানতাম" ভাবাটা শেখা না।
- প্রজেক্ট বানান। মডিউল শেষ করে প্রজেক্ট না বানালে জ্ঞানটা ভঙ্গুর থেকে যায়।
- নোট লিখুন। প্রতিটা লেসনের নিচে নোট লেখার জায়গা আছে — নিজের ভাষায় লিখলে বোঝাটা পাকা হয়।
আপনার ডেটা
কোনো account নেই, কোনো tracking নেই, কোনো backend নেই। আপনার অগ্রগতি আর নোট শুধু আপনার ব্রাউজারের localStorage-এ থাকে।অগ্রগতি পাতা থেকে export/import করে অন্য device-এ নিতে পারবেন।
প্রয়োজনীয় সরঞ্জাম
Level 4 (Operating Systems) থেকে একটা Linux পরিবেশ লাগবে। বিকল্পগুলো:
- নেটিভ Linux (সবচেয়ে ভালো) — Ubuntu, Fedora, বা Arch
- WSL2 (Windows-এ ভালো কাজ করে, তবে kernel আলাদা)
- VM (VirtualBox / UTM / QEMU) — kernel নিয়ে খেলার জন্য সবচেয়ে নিরাপদ
- macOS — অনেক কিছু চলে, কিন্তু
strace,/proc,perfনেই; Linux VM রাখুন
যেসব সরঞ্জাম বারবার লাগবে:gcc, gdb, python3, strace,ltrace, perf, tcpdump, docker,qemu, postgresql।