Memory Management কি?

Memory management হল computer এর memory কে control এবং coordinate করার প্রক্রিয়া। যার সাহায্যে operating system বিভিন্ন running program এর জন্য memory block, assign করে এবং এর ফলে overall system performance বৃদ্ধি পায়।

এটি operating system এর গুরুত্ব পূর্ণ কাজ গুলির মধ্যে একটি, অর্থাৎ primary memory manage করা।

Memory management প্রক্রিয়াতে যে সমস্ত hardware যুক্ত তা হল, RAM (random access memory) chips, memory caches, এবং flash-based SSDs (solid-state drives) অর্থাৎ যে সমস্ত component এর মধ্যে physically data store হয়।

Operating system , memory management এর মাধ্যমে বিভিন্ন program এর জন্য memory এর কিছু অংশ বা block নির্ধারিত বা allocate করে। এই allocation এবং reallocation হল memory management।

আবার application(software) এর দিক থেকে দেখলে , memory management হল প্রগ্রামের জন্য পর্যাপ্ত পরিমান memory সংরক্ষণের প্রক্রিয়া ।

এর সাহায্যে OS কম্পিউটার এ উপস্থিত সব memory location সম্পর্কিত তথ্য সংরক্ষণ করে।

Memory Management এর ব্যবহার?

Memory management এর সাহায্য Operating system যে সমস্ত কাজ করে থাকে তা হল

  • এর সাহায্য ঠিক হয় কোন প্রোগ্রাম এর জন্য কতটা memory দরকার। এবং processor কখন কোন memory access করবে।
  • এর সাহায্য Operating system, unallocated memory সম্পর্কিত সব তথ্য সংরহ করে রাখে।
  • কম্পিউটার এর প্রোগ্রাম গুলি যাতে একে অপরকে interfere না করে তা নিশ্চিত করা হয়।
  • এর সাহায্য program গুলি কম্পিউটার এর memory কে দক্ষতার সাথে ব্যবহার করতে পারে।

Memory Management Techniques

কিছু গুরুত্ব পূর্ণ memory management technique হল :

Single Contiguous Allocation

এটি সব থেকে সহজ memory management technique। এই প্রক্রিয়ায় সব (OS এর নিজস্ব memory ছাড়া) type এর computer memory শুধু মাত্র একটি application এর জন্য allocate করা হয়।

উদাহরন হিসেবে বলা যায় MS-DOS operating system এই প্রক্রিয়ায় memory allocate করে।

Partitioned Allocation

এই প্রক্রিয়ায় primary memory কে বিভিন্ন memory partition এ বিভক্ত করা হয়। এবং প্রতিটি partition, task সম্পর্কিত সব information store করে।

যখন কোন task শুরু হয় তখন তার জন্য memory partition , allocate করা হয় এবং task টি শেষ হয়ে গেলে partition টি আবার unallocate করা হয়।

Paged Memory Management

এই প্রক্রিয়া তে computer এর main memory কে কিছু fixed-size এর unit এ ভাগ করা হয়, এদের page frames বলা হয়।

Segmented Memory Management

Segmented memory হল এমন একটি memory management method যেখানে user এর program কে linear এবং পাসাপাশি address space দেওয়া হয় না । অর্থাৎ program এর জন্য যে memory allocate হয় তা বিক্ষিপ্ত বা memoryর বিভিন্ন অংশে ছড়ান থাকে।

এই Segment গুলির জন্য segment table ব্যবহার করা হয়। যার মধ্যে physical address , size, এবং অন্যান্য data যেমন access protection bits এবং status , storeকরে রাখে।