Site icon Trickbd.com

রম এ কি কি থাকে? রম এর এনাটমি

Unnamed

আসসালামুয়ালাইকুম।

ড্রয়েড ফোন আছে কিন্তু রমের কথা শুনে নাই এমন মানুষ পাওয়া অসম্ভব ব্যাপার।
কিন্ত রমে আসলে কি এমন থাকে যা একটা সেটের সব কাজকর্ম করে।

ট্রিকবিডি তে অনেকেই কাস্টম রম নিয়ে পোস্ট করেন।কিন্তু নতুন অনেকেই কাস্টম রম সম্পর্কে বিস্তারিত জানেন না।
তাদের জন্যই আমার আজকের এই পোস্ট।।

এই পোস্টে আপাতত রমের বেসিক কিছু ডিরেক্টরির কথা জানানো হবে,কিভাবে মডিফাই করা যায় তা বলা হবে। তবে আপনি যে একেবারে রম ডেভেলপার হয়ে যাবেন তা বলছি না।
আমি কেবল বেসিক কিছু ধারনা দিবো।।।

তাহলে শুরু করা যাক

সাধারণত দুই ধরনের রম থাকে। স্টক রম আর কাস্টম রম। যা মোবাইল কেনার সময় থাকে তা হল স্টক রম(যাতে কোন কাস্টমাইজেশন করা সম্ভব না) আর যা পরে ইন্সটল করা হয় (যেমনঃ CyanaogenMOD,MediaMod,PussyFap) তা হল কাস্টম রম (স্টকের ভাইস ভার্সা) আমরা এখানে কাস্টম রমের এনাটমি করব।

জিপ ফাইলকে আনজিপ করুন।

সেখানে দুটি ফোল্ডার(META-Inf,system) এবং একটি boot.img ফাইল দেখতে পাবেন।

এই ফোল্ডারগুলো কি দেখা যাকঃ

১। META-Inf:
প্রথম ডিরেক্টরি হল meta-inf যাতে থাকে রমের manifest এবং certificate info। রম যখন বানানো হয় এগুলো অটোমেটিক্যালি তৈরি হয়ে যায়।

২। Boot. img:

যদিও img এক্সটে্নশন আছে কিন্ত এটা কোন ছবি না, এটা এমন একটা ফাইল যাতে থাকে Kernel ও Ramdisk । এটা মূলত একটি ডিস্ক ইমেজ যা ফোন প্রথম বার বুট করার সময় Read হয়। একেও বিভিন্ন ভাবে মডিফাই করা যায়,কিন্তু আপাতত বুট ইমেজে আমরা হাত দেব না।

৩। System:
রমের জীবন হল এই ফোল্ডারটা।সাধারণত ১৪-১৫ টা ডিরেক্টরি এবং একটা build. prop ফাইল থাকে এখানে।
লিনাক্স বা ইউনিক্সের সাথে পরিচিতি থাকলে অনেক ডিরেক্টরিই চিনতে পারেন।যদি নাও চিনেন সমস্যা নাই।পোস্টে তা লেখা হবে।

এখন আসি build. prop নিয়ে।

এই ফাইলটিতে থাকে cache size,ROM name and version,Density setting,WIFI scanning interval,screen pixel ইত্যাদি।
সবগুলোই মডিফাই করা সম্ভব যেকোন টেক্সট ইডিটর দিয়ে (যেমনঃ Notepad++, Es File Exlorer,Quick Edit Pro)।

System ফোল্ডারের directory গুলো কি দেখা যাকঃ

1. bin: binaries এর শর্ট ফরম।এই ফোল্ডারটাতে সব গুরুত্পূর্ন লিনাক্স এপ্লিকেশন ও script থাকে যেমনঃ SSH,iptables,GZIP etc.

2. etc: এতে থাকে রমের বিভিন্ন কনফিগারেশন ফাইল এবং অন্যান্য সেটিংস।
CONF ফাইল ইডিট করে সেটের বিভিন্ন পারফর্মেন্স adjust করা যায়।

3. framework: এইটা নিয়ে বিস্তারিত পরে কোন পোস্টে লেখা হবে। তবে আপাতত বলা যায়,

It is a series of JAR/JAVA files that are key to the ROM’s operation

4. lib: short form of library। এখানে থাকে shared object(SO) ফাইল।রম ডেভলাপের উচ্চ পর্যায়ে গেলেই এ ফাইল মডিফাই করা উচিত।

5. Usr: এখানে system resource, language, local settings থাকে।

6. Xbin: এটা বাইনারির মতই। এখানে সেই বাইনারী ফাইলগুলা থাকে যেগুলোতে রুট এক্সেস লাগে যেমনঃ busybox, Rsync, Vim

7. Vendor: এটা অনেকটাই লাইব্রেরির মতই। রম ডেভলাপের সময় এখানে এক্সাটার্নাল লাইব্রেরি যুক্ত করা হয়।

[h2]Easily teakable ROM directories:[/h2]

App: রম ইন্সটল করার পর যে এপগুলো থাকে তা সব এখানে থাকে। আপনার ইচ্ছামত এপিকে ফাইল এখানে এড বা রিমুভ করতে পারবেন এখান থেকে। রম ইডিটিং এখান থেকেই শুরু করা যায়।

Fonts: রম হ্যাকিং এর জন্য আরেকটা উত্তম জায়গা। TTF ফাইল রিপ্লেস করার মাধ্যমে ফন্ট ইডিট করা যায়।

Media: এখানে থাকে OS এর ভিডিও অডিও ফাইলগুলো যেমন- ringtone,alarm,notification sound,bootanimation.zip।
সবগুলোই চেঞ্জ করা যায়।
বুট এনিমেশন চেঞ্জ করার মাধ্যমে সেট চালুর সময় এনিমেশন চেঞ্জ করা যায়।এছাডা রিংটোন এলার্ম সব চেঞ্জ করা সম্ভব।

এছাডাও বিভিন্ন Unused directory আছে ( যেমনঃaddon.d, cameradata, extras, Tts) যেগুলো নিজেদের মত থাকতে দিলেই বেটার,এখানে মডিফিকেশনের জায়গা নেই।

আপাতত এখানেই শেষ ।
রম ডেভলাপ বিষয়ে জানতে এবং ডেভলাপ শুরু করতে ইন্টারনেটে সাইটের অভাব নাই। ইচ্ছা থাকলেই শুরু করতে পারবেন।

আমার পোস্ট কষ্ট করে পডার জন্য আপনাকে ধন্যবাদ।।