باستخدام نظام الملفات لزيادة ذاكرة الوصول العشوائي

StackOverflow https://stackoverflow.com/questions/256009

  •  05-07-2019
  •  | 
  •  

سؤال

يجب أن أقوم بتقديم هذا بالقول إنني أعمل على تطبيق Pocket PC وملفات البيانات على بطاقات SD.

لديّ تطبيق يجب أن ينشئ مجموعة من الحجم X. Malloc فشل في كل مرة.

لقد حصلت على ملف أزعج 1 على بطاقة 4 أزعج.
لدي 64 ميجا من الذاكرة على متن الطائرة (ذاكرة الوصول العشوائي/البيانات/التطبيق/نظام التشغيل)
لا يمكنني معالجة البيانات لأن الصفيف الذي أحتاجه كبير جدًا.
الوصول إلى بطاقة SD أسرع تقريبًا مثل ذاكرة الوصول العشوائي.
أنا أعمل في C ++ (MFC)

ما هي أفضل طريقة للوصول إلى الملف الذي سأستخدمه كصفيف؟
أم أن هناك طريقة مختلفة للقيام بذلك؟

هل كانت مفيدة؟

المحلول

يجب عليك إنشاء ملف كبير بما يكفي للمصفوفة ، مبطنة بشكل مناسب (وفقًا لـ GetSystemInfo) ، والخريطة مع CreateFileMapping/MapViewOffile.

على الأقل ، ستكون هذه هي المحاولة الأولى لي - قد تكون هناك قيود على حجم الملف المعين على CE.

نصائح أخرى

ستحتاج إلى إنشاء نافذة من سجلات n (والتي ستناسب الذاكرة) ونقل تلك النافذة للحفاظ على السجل (السجلات) التي تقوم بها فيها. أنا لست بطلاقة بما فيه الكفاية في MFC لأعطيك عينة رمز ، ولكن لن يكون الأمر صعبًا.

في C# سأكتب مخصصًا مخصصًاu003CT>

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top