RAMسخت افزار

RAM چیست و چگونه کار می‌کند؟

RAM (حافظه دسترسی تصادفی) یکی از انواع حافظه‌های اصلی است که وظیفه حفظ داده‌ها به صورت موقت را دارد. یکی از وظایف اصلی RAM واسطه گری بین Hard Drive Disk و CPU است. در ادامه با ما باشید تا به صورت خلاصه با RAM و نحوه کار آن آشنا شوید.

کلمه RAM به چه معناست؟

کلمه RAM (رم) مخفف عبارت Random Access Memory به معنای “حافظه دسترسی تصادفی” یا  “حافظه با دسترسی تصادفی” است. این قطعه با نام‌های زیر نیز شناخته می‌شود:

  • Memory (حافظه)
  • Non-sequential Memory (حافظه غیر ترتیبی)
  • Randomly Memory (حافظه تصادفی)
  • Main Memory (حافظه اصلی)
  • RWM (حافظه خواندنی و نوشتنی)
  • Working Memory (حافظه خواندنی)

 

رم چیست؟

RAM یک حافظه قابل خواندن و نوشتن است که بر پایه طراحی فلش (Flash) ساخته شده و وظیفه اصلی آن حفظ داده‌ها به صورت موقت برای پردازش در CPU است. رم داده‌ها را در خازن‌های موجود در حافظه خود ذخیره می‌کند. از این رو به دلیل ماهیت خازن‌ها، درصورت قطع برق انرژی خود را به سرعت از دست می‌دهند. همچنین خازن‌ها به دلیل این که میل به دشارژ شدن دارند، کنترلر حافظه به صورت انرژی آن‌ها را ریشارژ می‌کند. شارژ بودن خازن به معنای بیت منطقی ۱ و شارژ نبودن آن به معنای بیت ۰ است.

 هسته سیستم عامل و  برنامه‌های موجود در سیستم‌عامل‌ها، ابتدا بر روی این حافظه موقتی قرار می‌گیرند سپس برای پردازش به نوبه به CPU ارسال می‌شوند. زمانی که اتصال رم با منبع تغذیه قطع می‌شود یا برق مورد نیاز را دریافت نکند (مانند زمانی که کامپیوتر خود را خاموش می‌کنید)، این ماژول تمامی اطلاعات خود را از دست می‌دهد و به اصطلاح ریست (Reset) می‌شود و کل فضای حافظه آن پاک می‌شود.

 

رم چه وظیفه‌ای بر عهده دارد؟

همانطور که گفته شد، وظیفه رم حفظ داده‌ها به صورت موقت است. سیستم‌عامل در هنگام بوت شدن (Boot) و همه برنامه‌ها و اجزای آن (مانند متغیرهای برنامه و…) که اجرا می‌شوند، ابتدا بر روی این حافظه موقتی ذخیره می‌شوند تا به سرعت برای پردازش در دسترسی CPU قرار بگیرند؛ چون سرعت RAM بسیار بیشتر از سرعت حافظه‌های جانبی مثل هارد دیسک‌ است و بنابراین CPU می‌تواند به سرعت دستورات را دریافت کرده و پردازش کند. تقریبا تمامی عملیات  برنامه‌ها و دستوراتی که قرار است از طریق CPU پردازش شوند در RAM منتظر می‌مانند. با اتمام فرایند پردازش یک دستور، دستوری که در صف انتظار قرار دارد، به CPU داده می‌شود تا مورد پردازش قرار گیرد.

رم RAM

 

معمولاً پردازنده ها دارای سرعت پردازش بالایی هستند در صورتی که حافظه‌های جانبی بر خلاف آن سرعت ذخیره کمتری دارند و کند هستند. بنابراین RAM در بین این دو ماژول (حافظه جانبی و پردازنده) قرار می‌گیرد. فرض کنید زمانی که یک خروجی برای ذخیره شدن از طرف CPU به  حافظه جانبی ارسال می‌شود، پس از مدت بسیار کوتاهی، خروجی دیگری نیز برای ذخیره شدن ارسال می‌شود. درحالی که حافظه جانبی هنوز پروسه ذخیره سازی ورودی اول را تمام نکرده، ورودی دیگری از طرف CPU دریافت می‌کند. حال اینجاست که RAM با قرار گرفتن بین این دو، میان پردازنده و هارد دیسک یک تعامل ایجاد می‌کند.

خروجی‌هایی که از طرف پردازنده به حافظه جانبی (در این مثال: هارد دیسک) ارسال می‌شوند، یکی یکی در RAM ذخیره می‌شوند سپس به ترتیب به هارد دیسک ارسال می‌شوند. زمانی که هارد دیسک مقدار ورودی اول را ذخیره کرد از حافظه موقتی مقادیر بعدی را درخواست می‌کند.

رم RAM

بنابراین RAM با این دو وظیفه مهم، به عنوان یک واسطه‌‌ی دو طرفه بین هارد دیسک و پردازنده قرار گرفته است.

رم RAM

نکته: وظیفه رم فقط به حفظ تعادل میان هارد دیسک و سی پی یو ختم نمی‌شود. این ماژول بین سایر سخت افزارها نظیر کارت‌های گرافیک نیز این تعادل را به وجود می‌آورد برای مثال، کارت‌های گرافیک می‌توانند از رم نیز به عنوان حافظه موقتی خود استفاده کنند. رم به صورت کلی یک حافظه موقتی برای کلیه سخت افزارهاست. برای مثال RAM به عنوان میزکار پردازنده در مقیاس بزرگتر نیز استفاده می‌شود.

 

چرا این قطعه “حافظه با دسترسی تصادفی” نام دارد؟

دلیل اینکه اسم RAM یا Random Access Memory به معنی “حافظه دسترسی تصادفی” را روی این قطعه گذاشته اند این است که در RAM برخلاف بسیاری از حافظه‌های دیگر، هر داده بدون در نظر گرفتن ترتیب فضاهای حافظه، می‌تواند بر روی فضاهای موجود در RAM قرار بگیرد. این بدان معنی است که در هر لحظه و در هر زمان میتوان بصورت مستقیم به فضاهای حافظه RAM بدون در نظر گرفتن ترتیب دسترسی داشت. شاید عبارت “دسترسی تصادفی” برای این قطعه کاربران را دچار مشکل و سردرگمی کند. اسم دیگری که می‌توان بر روی این قطعه گذاشت عبارت “دسترسی غیر ترتیبی” است.

نحوه نوشتن در حافظه‌های ترتیبی

در اغلب انواع حافظه‌ها نحوه قرار گیری داده‌ها در فضاهای حافظه‌ی مربوط، به طور زیر است:

رم RAM
نحوه نوشتن در حافظه‌های ترتیبی

همان گونه که در تصویر بالا می‌بینید، داده شماره ۱ در فضای شماره ۵ ذخیره می‌شود (چون قبلاً فضاهای ۱ تا ۴ در حافظه پر شده اند؛ بنابراین داده‌های جدید در فضاهای ترتیبی دیگر ذخیره می‌شوند) و داده شماره ۲ در فضای شماره ۶ و داده شماره ۳ در فضای شماره ۷ و … ذخیره می‌شوند.  همانطور که می‌بینید، داده‌ها به صورت ترتیبی ذخیره می‌شوند.

خواندن در حافظه‌های ترتیبی

فرض کنید که حافظه قصد دارد تا مقدار موجود در فضای ششم را بدست بیاورد:

رم RAM
نحوه خواندن در حافظه‌های ترتیبی

همانطور که می‌بینید، برای اینکه واحد تنظیم کننده حافظه بتواند مقدار موجود در فضای شماره ششم را بدست بیاورد، یکی یکی فضاهای حافظه را پشت سر می‌گذارد تا در نهایت به فضای مورد نظر برسد.

این عملیات که به صورت خواندن و نوشتنِ ترتیبی است، سرعت این نوع حافظه‌ها را به شدت کم می‌کند چون واحد تنظیم کننده‌ی حافظه باید برای بدست آوردن مقدار موجود در یک فضا، تمامی فضاهای پشت سر آن را یکی یکی بپیماید تا به فضای مورد نظر برسد.

نحوه نوشتن در حافظه‌های غیر ترتیبی (مثل RAM)

اما این فرایند در حافظه‌های غیر ترتیبی مانند RAM، اینگونه نیست. حافظه RAM می‌تواند داده‌ها را در هر فضایی که به آن دستور داده شده است، ذخیره کند:

رم RAM
نحوه نوشتن در حافظه‌های غیرترتیبی مانند RAM

همانطور که می‌بینید، داده‌ها بر خلاف دیگر حافظه‌ها به صورت ترتیبی در فضاهای حافظه قرار نگرفته اند بلکه طبق تصمیم واحد کنترل کننده‌ی RAM و دستوری که به آن داده می‌شود (توسط باس‌های داده و آدرس)، در فضاهایی که ممکن است غیر ترتیبی باشند، ذخیره می‌شوند.

نحوه خواندن در حافظه‌های غیر ترتیبی (مثل RAM)

فرض کنید که حافظه قصد دارد مقدار موجود در فضای چهارم را بدست بیاورد

رم RAM
نحوه خواندن در حافظه‌های غیرترتیبی مانند RAM

همانطور که می‌بینید، RAM برخلاف سایر حافظه‌ها، به صورت مستقیم به فضای مورد نظر دسترسی دارد و این باعث افزایش سرعت فوق العاده در فرایند خواندن و نوشتن بر روی حافظه می‌گردد.

 

برخی از تولید کنندگان RAM

در لیست زیر برخی از معروفترین تولید کنندگان RAM قرار گرفته اند:

امیررضا نصیری

امیررضا هستم، دانشجوی ارشد نرم‌افزار و مدیر بایت گیت و دلیکس. عاشق کامپیوتر و هر چی که بهش ربط داره! دوست دارم همه چیزو یاد بگیرم و اونا رو یاد بدم. امیدوارم از مطالب سایت استفاده کنید و لذت ببرید. » بیشتر آشنا شوید!

نوشته های مشابه

۱۵۴ دیدگاه

  1. با سلام

    ببخشید nb frequency چیست بیشتر باشه بهتره و در تایمینگ اثر داره
    خواهشا به سوال من پاسخ دهید

    1. سلام. nb مخفف northbridge ـه مادربورده. محاسبه فرکانس نورثبریج یکم کار سختیه ولی در کل هرچقدر فرکانسش بالا باشه عملکرد رم هم قاعدتا بهتر خواهد بود.

  2. بایوس کامپیوتر پیغام خطا می داد که چک کردم از باتری بکاپ نبود .clear cmos هم کارساز نشد . دادم شرکت بایوس روپروگرم کرد . حالا که کامپیوترو روشن می کنم ،فن پاور وسی پی یو روشن میشه ولی بوق رم نمیاد وسیستم بالا نمیاد . رم رو که برداشتم ودوباره جا زدم ،سیستم بالا اومد . ولی گاها تکرار میشه .یعنی برای بالا اومدن سیستم باید یک بار رم رو ازاسلات درارم ودوباره جا بزنم . لطفا راهنمایی کنید .

    1. سلام. خب حتما مشکل از اسلات یا رمه. ببینید کنده نشده از روی مادربورد؟ دندونه هاش خراب نشدن؟ چون این مشکلیه که بعضاً برای مادربوردهای قدیمی تر پیش میاد.

  3. سلام،ممنون از اطلاعاتتون، در مورد RAM ،
    اگه بخوام pes 2015 روی لپتاپ نصب، و به خوبی اجرا بشه لپتاپی که میخوام بخرم از لحاظ گرافیک و RAM و حداقل چه طوری باید باشه؟ با تشکر

    1. سلام. برای بازی پی ای اس ۵ سیستم مورد نیاز رو میتونید در لینک زیر ببینید:
      http://www.systemrequirementslab.com/cyri/requirements/pro-evolution-soccer-2015/12357/?p=r#rec
      البته این سیستم پیشنهادیه و بازی رو بهتر اجرا میکنه. لپتاپ های زیادی
      این مشخصات رو دارن و نباید قیمتشون زیاد باشه.

  4. سلام من چن وقت پیش بازی اساسین کرید رولیشن رو نصب کردم و خیلی عالی بازی رو سیستمم اجرا میکرداما وقتی اینترنتم رو وصل کردم سیستمم یکم کند شده و موقع اجرای بازی ،بازی لق داره بعضی وقتا هم هنگ میکنه و خود به خود سیستم خاموش میشه حالا شما بگین من چیکار کنم؟
    اینم مشخصات سیستمم:
    رمم یکه و دی دی ار ۲
    گرافیکم یکه و مدل اِنویدیا
    سی پی یو هم ۲.۸۰گیگاهرتز
    ویندوز هم ۷ / ۳۲بیت
    به نظر خودم مشکل از رمه حالا شما چی میگین؟

    1. سلام. وقتی اینترنت رو روشن میکنید بازی به احتمال زیاد سعی میکنه با سرورهاش ارتباط برقرار کنه. اینجاس که بازی یکم کند میشه ولی زود گذره و معمولا اگه نتونه وصل بشه، بیخیال میشه. حالا اگه نشد، بازی تا زمانی که ببندینش و اینترنت رو قطع کنید همینجوری لگ میکنه. پیشنهاد میکنم از فایروال ویندوز تنظیم کنید که فایل اجرایی بازی نتونه به اینترنت وصل بشه. آموزشش هم همه جا هست.

  5. سلام. دوست عزیز میتونه ۱۰۰۱ دلیل داشته باشه. مشکل ممکنه از مانیتور باشه، از کارت گرافیک باشه، از سیستم برق رسانی، تنظیمات بایوس مادربورد، رم و …!

  6. با سلام یه جا برام مبهم بوداینکه وقتی یه برنامه ای مثلا کتیا اجرا میشه کل برنامه تو رم لود میشه یا موقع بالا امدن سیستم هرچی برنامه هست تو رم لود میشه؟ایا رم گوشی هم همین عملکردو داره؟

    1. سلام. سیستم عامل وقتی برنامه ها رو اجرا میکنه اونارو در رم قرار میده. هنگام بالا اومدن سیستم فقط برنامه های startup، درایورها و بعضی از فایل های سیستم عاملی به حافظه رم میرن. و بله، گوشی هم همین عملکرد رو داره.

  7. سلام داداش من یه چند تا سوال مهم در مورد مبانی کامپیوتر دارم شما احیانن تلگرام یا لاین دارید؟

    1. سلام. اگه به پست ها مربوط میشن، میتونید تو قسمت نظراتش بپرسید تا بقیه هم استفاده کنن وگر نه میتونید از طریق قسمت تماس با ما در ارتباط باشید.

    1. سلام. دلیل اصلیش اینه که هارد یه قطعه مکانیکیه و شامل قطعات فیزیکی میشه در نتیجه نوشتن و خواندنش زمان خیلی بیشتری میبره نسبت به قطعات غیرمکانیکی مثل رم که فقط یه بورد الکتریکیه.

  8. با توجه به برداشتی که از متن شما داشتم شما گفتین که رم خودش اطلاعاتو از دیسک میگیره و دستور صادر میکنه در صورتی که مغز متفکر سیستم سی پی یو نه و رم فقط یه مکانه و قدرت تصمیم گیری نداره و تابع سی پی یوست.

    1. سلام. دوست عزیز توی پست گفته نشده که رم “خودش” اطلاعاتو برمیداره. رم هیچ قطعه پردازنده ای نداره که بخواد دستور صادر کنه. بجاش سی پی یو ـه که این کار رو انجام میده.

  9. slm khaste nabashid, merc babate matalebetun, daqiqan hamin mataleb o titr haro baraye Rom ham mitunin tashrih konin?! kheili moheme

    1. سلام. والا این روزا بدجور سرم شلوغه حتی پست های پیشنویس رو هم وقت نمیکنم منتشر کنم ولی چشم در آینده حتما یه پست دربارشون مینویسم.

  10. سلام خسته نباشید ، یک سوال دارم .
    آیا رم کامپیوتر میتواند اطلاعاتی را در خود ذخیره کند که بعدا آن اطلاعات را باز گردانی کنیم ؟
    یا فقط یک حافظه موقت است ؟؟

        1. سلام. تا جایی که من میدونم PCMCIA اسم یه گروهه. گروهی که PC Card ها رو ساخت و الان اکسپرس کاردها جایگزینشون شدن. قطعات سخت افزاری ای هستن که امکانات اضافی رو به سیستم میدن.

  11. بابت همه چیز ممنون این؟ آخرمه این ماژول حافظه گفته شده تو پست که کار خاصی انجام میده یعنی چه کار خاصی انجام میده؟

    1. سلام. ماژول قطعه ایه که یه کار خاصی انجام میده. رم هم یه ماژوله و کار خاصی که انجام میده نگه داشتن داده ها بصورت موقتیه.

    1. سلام. پیشنهاد میکنم پست های مربوط به هارد و رم رو بخونید. هارد حافظه جانبیه که فایل ها و … روش ذخیره میشه و برای اجرا شدن اول روی رم بارگذاری میشن که یه حافظه موقتیه.

  12. سلام
    آفرین
    این حرکتت علاوه بر بزرگی طبعت نشونه پشتکارت و عشقت به رشتته!
    امیدوارم موفق باشی…

    1. خیلی ممنونم ازت آقا حمید. مطمئنا کارمونو ادامه میدیم و از چنین کامنت هایی انرژی میگیریم 🙂

  13. سلام دوستان خوبی من رشته کامپیوتر را انتخاب کردم خیلی کار های هک دوست دارم فعلا فقط میتوانم دوربین را فعال کنم و رمز وایفایی را بشکنم من خیلی ئوست دارم که کار های بیشتر هم انجام دهدم

  14. با سلام برای یک لب تاب نهایت رم چقدر باشه عالیه
    و فرق بین رم ۸ و ۱۲ چه تاثیری میذاره رو لپ تاب ؟
    _____
    لپ تاب i5

    1. سلام. رم بستگی به کاری که از لپتاپ میکشین داره. اگه هیچ وقت به اندازه ۸ گیگ از رم فضا نمیگیرین عملا اون ۴ گیگ برای رمز ۱۲ گیگی بی مصرف میشه و تاثیری نخواهد داشت رو کارایی. پس به کاری که میخواین انجام بدی بستگی داره.

      1. تشکر و ممنون چون یکم حساس بودن گفتم شاید ۱۲گیگ بهتر باشه و تاثیر بهتر تو سرعتش میذاره با اینکه بازی هم نمی کنم الان با حرف شما مجاب شدم ۸گیگ رم رو بگیرم

        1. 🙂 بله اگه کارهای سنگینی انجام نمیدین خرج اضافی فکر نکنم خوب باشه.

  15. با سلام
    روی سیستم خودم یک رمDDR2 یک گیگ نصبه اگه بخام ارتقاش بدم درکنار این رم چه رمی رو میتونم نصب کنم که بتونه ساپورت بشه

    1. سلام. رمی با همین معماری و فرکانس کاری و تاخیر و بهتره ظرفیتشون هم یکی باشه 🙂 یعنی بهترین گزینه استفاده از یک رم دیگه دقیقا مثل مدلی که دارین.

  16. خیلی ممنون از اموزشتون.میشه در مورد دسترسی ربانهای برنامه نویسی مثل vb.6 به رمها روتوضیح بدین.مثلا من یک سورس دارم از جنس runpe میخوام ببینم کارش دقیقا چیه.مرسی

    1. سلام. اینا بصورت تزریقی کار میکنن. همه دستور العمل ها و داده ها برای پردازش اول روی رم قرار میگیرن. این برنامه ها یه پروسه بدون مشکلی رو نمونه سازی میکنه و اونو تو حالت غیرفعال میزاره. چون حالت غیرفعال یا ساسپندیده، برنامه (بیشتر بد افزارها) میاد بقیه کدهای پروسه شبیه سازی شده رو پاک میکنه و دستورات خودشونو تزریق میکنن به حافظه رم. بعد که پروسه رو فعال کرد اینجوری انگار اون برنامه (بهتره بگیم پروسه) داره دستوراتو اجرا میکنه و پشت سرش مخفی میشن.

  17. چقدر زود جواب دادین.مرسی
    خیلی سخته اصلا نمیفهمم.دوست دارم یکم گریه کنم الان
    فرق اینتری پوینت با ران پی چیه؟اصلا بلدین کریپتر بسازین؟
    بازم مرسی بابت جواب.
    حس میکنم خنگم
    منم میخوامببینماون پروسه بدون مشکل رو چه طوری باید بنویسم چیا مظالعه کنم.کجا برم؟فقط خارج کشور نباشه من کشورم روبا هیچی عوض نمیکنم حتی ران پی

    1. سلام، گریه برای چی! اینا مباحث پیشرفته هستن و درک کردنشون در ابتدا نه فقط برای شما بلکه واسه همه مشکله. اینترای پوینت که کلا یه چیز دیگس، جایی که سیستم عامل بعد از اجرای برنامه، کنترل رو میده بهش میگن اینترای پوینت. یعنی دقیقاً زمانی که کدهای برنامه شروع به اجرا شدن میکنن. ران پی ای هم که توضیح دادم چیه. این که از کجا شروع کنین والا من خودمم نمیدونم از کجا شروع کردم! همینطوری رفتم تو عمق مطالب و کم کم یاد گرفتمشون. شما دقیقاً میخواین چی بنویسین؟

      1. مرسی جواب میدین .میخواستم ببینم کریپتر با اینتری پوینت چه طوری میسازن.eide hame ham mobarak

        1. سلام، عید شما هم مبارک. متاسفانه نمیتونم در این باره کمکتون کنم.

  18. سلام.ببخشین من با حدود ۲ ملیون میخام لب تاب بخرم .سرعت برام مهمه.مثل جت بره.چه مدلی برای خرید پیشنهاد میکنید؟

    1. سلام. متاسفانه چون زیاد تو بازار و قیمت ها سررشته ندارم نمیتونم راهنماییتون کنم.

  19. با سلام خدمت شما دوست عزیز
    در حافظه های فرار مثل رم خازن مسئول حفاظت داده ها ست وب رفتن برق داده ها از بین میروند ولی سوال من اینه در حافظه ای نثل rom یا فلش مموری ها این قضیه چه جوری لطفا توضیحی بدین ممنونم

    1. سلام. در حافظه های فلش و EEEPROM دوتا ترانزیستور (یکی به نام فلوتینگ گیت و یکی کنترل گیت) که از هم با لایه های اکسید جدا شدن وظیفه ذخیره و تحویل داده رو بر عهده دارن.

  20. با سلام
    مشکلی در سیستم PCهست که وقتی برای اولین با روشن میکنی میزان استاده از RAM , CPU خیلی بالاست بدون اینکه اصلا برنامه ای اجرا کنم. RAM حدود ۶۰% در حالی که سیستم PC دارای RAM 4GIG و CPU 4 هستهای ۲.۵ گیگ هست CPU هم رو ی ۳۳% هست اصلا پایین نمیاد وقتی RESTAR میکنی میزان استفاده از این برنامه ها سخت افزارها کم میشه قبلا این طور نبود تا وقتی ی بار ویندوز رو عوض کردم این بلا سرش اومد چند بار دیگه ویندوز عوض کردم متاسفنه همین طوریه تغییر نکرده در ضمن ویندوز من ۷ هستش و قبلا هم ۷ بوده

    1. سلام. تو Task Manager برید تب Process و طبق ستون CPU و RAM مرتب سازی کنید ببینید کدوم پروسه ها بیشتر از رم و سی پی یو استفاده میکنن.

  21. سلام عیدتون مبارک وقتی سیستم کرش میشه و صحفه آبی میده یک فایل دامپ ایجاد میکنه سوال من اینه که این سیستم عامل ازداده های رم مجازی یا page file هم کپی برمیداره اگه بر میداره لطفا ربطشو بگین که چرا بر میداره

    1. سلام. نه کپی برنمیداره. توی فایل دامپ فقط اطلاعات مربوط به دیباگ کردن مشکل نوشته میشه و پیج فایل هم همونطوری که بوده میمونه.

  22. سلام اگه یه دوری تو سایتها بزنی خودت می بینی تو سایت مایکروسافت نوشته این فایل یه کپی از حافظه سیستم هستش یعنی اون برنامه هایی اجرایی توی رم از اونجایی که پیج فایل هم یه رم مجازی هستش و بعضی برنامه ها توی اون ذخیره میشن
    ودر بعضی سایت ها نوشته واسه حالت مثلا kernel memory dump حدود ۱ سوم فضا برای paga file میخواد

    1. سلام. ببخشید میشه لینک منبعتون رو بدین؟ توجه کنین که کاربرد پیج فایل و دامپ مربوط به دیباگ ها کلا فرق میکنه باهم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *