আমি কীভাবে এআরএম-ভিত্তিক সিস্টেমে ডেটা দুর্নীতির জন্য র্যামটি পরীক্ষা করতে পারি?


20

আমার একটি এম্বেডড ডিভাইস রয়েছে। এটি আর্ম ভিত্তিক, লিনাক্স 2.6.31 সহ এবং 256 এমবি র‌্যাম রয়েছে।

ডেটা র‌্যামের জন্য র‌্যামের পরীক্ষা করার সবচেয়ে কার্যকর উপায় কী তা সম্পর্কে আমি কিছু ধারণা / টিপস পেতে চেয়েছিলাম। এমন কোনও পরীক্ষা / সফটওয়্যার রয়েছে যা কেউ পরামর্শ দিতে পারে?

বিঃদ্রঃ:

আমার এখন স্মৃতি আছে। উলরিচ ড্যানগেল (নীচে) এর পরামর্শের পরে আমি এটি পেয়েছি।

আমি mtestএখন উবুট থেকেও সেট আপ করেছি ।

আমি ব্যবহার করতে পারে অন্য কোন পরীক্ষা / পদ্ধতি?


2
মনে রাখবেন এটি একটি আর্ম সিপিইউ, কোনও x86 নয়; দুর্ভাগ্যক্রমে, মেমস্টেস্ট 86 + এই ক্ষেত্রে কাজ করবে না।
রেনান

আমি স্মারক পেয়েছি। আমি ব্যবহার করতে পারে অন্য কোন পরীক্ষা / পদ্ধতি?
অঙ্কুর আগরওয়াল

1
আপনি কি চান? আমি মনে করি আপনার যদি অন্য কিছু সমস্যা থাকে তবে যদি এই পদ্ধতিটি আপনার পছন্দমতো ফলাফল না দেয়। mtestমূলত মেমস্টেস্ট + + + এর মতো করে। আপনার মূলত বিভিন্ন অপশন রয়েছে, আপনার অপারেটিং সিস্টেম থেকে লিনাক্সের মতো মেমরি পরীক্ষা চালান (এটি এমন হবে memtesterতবে পুরো শারীরিক অঞ্চলটি পরীক্ষা করতে আপনার সমস্যা হতে পারে)। আপনার স্মৃতিশক্তি পরীক্ষা করতে আপনি কিছু মিনি সিস্টেম (ইউবুট )ও ব্যবহার করতে পারেন ( mtest)
উলরিচ ড্যাঙ্গেল

প্রসেসরটি কি মার্ভেল থেকে এসেছে? আমার একটি মার্ভেল নেটওয়ার্ক প্রসেসরের একই প্রশ্ন রয়েছে, এটি হ'ল আপনার মত একই কনফিগারেশন (এআরএম / 256 এমবি র‌্যাম / লিনাক্স 2.6.31)।
টিম উ

এখানে একটি অনুরূপ স্ট্যাক ওভারফ্লো প্রশ্ন । এখানে সমস্ত পরীক্ষাগুলি কিছু সমস্যা খুঁজে পেতে পারে। তারা সমস্ত সমস্যা খুঁজে পাবে না এবং বাস্তবে এটি করা খুব কঠিন। কেবল খুব ভাল বোর্ড সিমুলেশন সরঞ্জাম এবং মডেলিং এটি যাচাই করতে পারে; সফটওয়্যার না যদি এটি করা হয়ে থাকে তবে কেবলমাত্র ডিডিআর চিপ (বা সম্ভবত হোস্ট কন্ট্রোলার) হবে এবং স্মৃতিবিদ এবং মাইস্ট এগুলি খুঁজে পেতে পারে। তবে, তারা যদি বলে যে সবকিছু ঠিক আছে; 100% কোনও ডিডিআর ইস্যু বাতিল করবেন না।
নির্মম আওয়াজ 17

উত্তর:


21

মেমোরি পরীক্ষা করার সাধারণ সমাধানটি হ'ল 0xFFFFFFFFআপনার মেমরির মতো একটি নির্দিষ্ট প্যাটার্ন লিখুন এবং পরে এটি পড়ুন এবং ফলাফলটির তুলনা করুন। সমস্যাগুলি আবিষ্কার করতে আপনি অবশ্যই প্যাটার্নটি পরিবর্তন করতে পারেন এবং করা উচিত। কিছু সমাধান যেমন memtest86+এলোমেলো নিদর্শন উত্পন্ন করে এবং স্মৃতিতে লেখার জন্য তারা যে দিকটি ব্যবহার করে তা পরিবর্তন করে। মেমস্টেস্ট in। এ ব্যবহৃত অ্যালগরিদমগুলি সম্পর্কে আরও বিশদ তথ্যের জন্য তাদের প্রযুক্তি পৃষ্ঠাটি দেখুন । এই পোস্টে প্রদত্ত সমস্ত সমাধান মূলত একই অন্তর্নিহিত ধারণাটি ব্যবহার করছে।

আপনি যদি লিনাক্সের মধ্যে থেকে পরীক্ষা চালাতে চান (আপনি আপনার পোস্টে লিনাক্সের উল্লেখ করেছেন) স্মৃতিচিহ্ন এবং স্মৃতি স্যুট যা আপনার উভয়ই বাহু দিয়ে কাজ করা উচিত তা একবার দেখুন। শুরু করার জন্য আপনার স্মৃতিশক্তি ব্যবহার করা উচিত কারণ এটি মূলত আপনি যা চান ঠিক তেমন করে।

লিনাক্সের মধ্যে থেকে আপনার মেমোরিটি পরীক্ষা করার কিছু অসুবিধা রয়েছে যেমন আপনি সত্যিকার অর্থে আপনার সমস্ত শারীরিক স্মৃতি পরীক্ষা করতে পারবেন না কারণ কার্নেলেরও মেমরির প্রয়োজন হয়। ইউবুট দিয়ে মেমরি পরীক্ষা করতে (এটি লিনাক্স কার্নেলের চেয়ে অনেক ছোট) ইন্টিগ্রেটেড মাইস্ট কমান্ডটি দেখুন। এটি আপনাকে ঠিকানার পরিসর, প্যাটার্ন এবং পুনরাবৃত্তি নির্দিষ্ট করতে দেয়। সঙ্গে mtest আপনি একটি অপারেটিং সিস্টেম উপর নির্ভর না করেই চমত্কার ব্যাপক পরীক্ষা করার সক্ষম হওয়া উচিত। আপনাকে কেবল নিশ্চিত করতে হবে যে আপনি বৈধ মেমরি ব্যাপ্তি ব্যবহার করছেন অন্যথায় এটি সম্ভবত আপনি ubootমেমরি অঞ্চলটি ওভাররাইট করে ।

মিস্টের সরবরাহিত পরীক্ষাগুলি যদি পর্যাপ্ত না হয় তবে আপনি অবশ্যই কেবল উবুট প্রসারিত করতে পারেন এবং অতিরিক্ত মেমোরি টেস্টিং বৈশিষ্ট্যগুলিকে ইউবুটে সংহত করতে পারেন।


ঠিক আছে আমি স্মরণিকা পেয়েছি। অন্য কোন পরীক্ষা আমি করতে পারি?
অঙ্কুর আগরওয়াল

1
আমি চেষ্টা করতে পারে অন্য কোন পরীক্ষা পদ্ধতির? আমি উবুট থেকে র‌্যাম পরীক্ষা করার কথা ভাবছি।
অঙ্কুর আগরওয়াল

@ এবিসি ঠিক আছে আমি ইউবুটস মাইস্ট কমান্ড সম্পর্কে একটি নোট যুক্ত করেছি
উলরিচ ড্যাঙ্গেল 25'12

1
আমি ইউবুট কমান্ডগুলি ব্যবহার শুরু করেছি এবং এখন দেখছি যে মেমরি ডিসপ্লে uboot কমান্ড মাঝখানে আটকে যায়bist > md.w 0x00000023 10 00000023:
অঙ্কুর আগরওয়াল

ইউ-বুট দুটি ভিন্ন মিস্টের সমর্থন করে। ডিফল্টের চেয়ে আরও বিস্তৃত মেমরি পরীক্ষার জন্য CONFIG_SYS_ALT_MEMTEST দিয়ে সংকলন করুন।
এম__
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.