تدير الملفات المستمرة وتفتحها عبر مقابض قائمة على RAII للقراءة والكتابة بالكتل.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 7736cf7ccbd1المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تدير الملفات المستمرة وتفتحها عبر مقابض قائمة على RAII للقراءة والكتابة بالكتل.
تتيح الفئة ara::per::FileStorage إدارة وفتح مجموعة من الملفات المستمرة المهيأة عبر أسماء ملفات فريدة [SWS_PER_00110]. ويتم الوصول الفعلي للقراءة والكتابة عبر عناصر وصول تدار بواسطة UniqueHandle، والتي تغلق الملف تلقائيًا مرة أخرى عند الخروج من النطاق [SWS_PER_00114]. ونظرًا لأن الملفات المفتوحة بالفعل محمية من عمليات الحذف أو الاستعادة المتزامنة، فإن مثل هذه العمليات المتوازية للوصول تفشل مع PerErrc::kResourceBusy[SWS_PER_00111].
السياق
تغلف الفئة ara::per::FileStorage الوصول إلى مجموعة مهيأة من الملفات المستمرة التي يتم التعرف عليها عبر أسماء ملفات فريدة. وتعمل كواجهة مركزية للتطبيقات لتنفيذ عمليات الملفات مثل سرد الملفات الموجودة عبر GetAllFileNames[SWS_PER_00110]، والتحقق من الوجود بواسطة FileExists[SWS_PER_00112]، بالإضافة إلى الاستعلام عن البيانات الوصفية وأحجام الملفات عبر GetFileInfo[SWS_PER_00438] وGetCurrentFileSize[SWS_PER_00407]. ولا يتم الوصول المباشر للقراءة أو الكتابة على مستوى البايت على مثيل التخزين نفسه، بل يتم التوسط فيه عبر كائنات وصول خاصة توفرها دوال الفتح كـ UniqueHandle[SWS_PER_00114][SWS_PER_00113][SWS_PER_00115].
دورة الحياة
يخضع إنشاء مثيل FileStorage لقيود صارمة: فقد تم حذف كل من المنشئ الافتراضي [SWS_PER_00460]، ومنشئي النسخ والنقل [SWS_PER_00328][SWS_PER_00326]، ومعاملي تعيين النسخ والنقل [SWS_PER_00329][SWS_PER_00327] صراحةً. وبالتالي، يُرجح أن يُفتح مثيل FileStorage ويُتاح عبر دوال المصنع الخاصة بمنصة وحدة الاستمرارية. سؤال (مفتوح) والهادم ~FileStorage آمن من حيث الاستثناءات (noexcept)، غير أنه محدد صراحةً بأنه ليس آمنًا لخيوط المعالجة [SWS_PER_00330]، ولهذا السبب يجب التأكد من عدم حدوث أي استدعاءات متزامنة على الكائن أثناء الإتلاف.
أثناء التشغيل، صُممت عمليات الملفات العادية مثل FileExists أو DeleteFile أو فتح الملفات لتكون آمنة لخيوط المعالجة [SWS_PER_00111][SWS_PER_00112][SWS_PER_00114]. ومع ذلك، تجدر الإشارة إلى أن نتائج استعلامات الحالة مثل GetAllFileNames[SWS_PER_00110] أو FileExists[SWS_PER_00112] لا تتمتع بصلاحية دقيقة إلا إذا لم تُضف ملفات أو تُحذف في خيط معالجة آخر في الوقت نفسه. وينطبق أمر مماثل على GetFileInfo: فأوقات التعديل والوصول بالإضافة إلى حالة التحرير تكون دقيقة وموثوقة فقط طالما أن الملف الهدف ليس مفتوحًا [SWS_PER_00438].
مسار الاستخدام
يتضمن مسار الاستخدام النموذجي الفحص، والفتح المستهدف، ومعالجة البيانات عبر مقبض كائن الوصول، والتنظيف الختامي:
فحص حالة الملف: قبل الوصول، يمكن اختياريًا عبر FileExists تحديد ما إذا كان الملف المطلوب موجودًا [SWS_PER_00112]، أو الاستعلام عن الرصيد المتاح عبر GetAllFileNames[SWS_PER_00110].
إغلاق الملف وتحرير الموارد: يُغلف ara::core::Result المعادل من دوال الفتح UniqueHandle على كائن الوصول المعني. ويُغلق الملف تلقائيًا بمجرد خروج UniqueHandle هذا من نطاقه [SWS_PER_00114][SWS_PER_00113][SWS_PER_00115]. ويُفترض أنه يتم هنا أيضًا إلغاء علامة حجز الملف في FileStorage. سؤال (مفتوح)
الصيانة والتنظيف: تُحذف الملفات التي لم تعد مطلوبة باستخدام DeleteFile[SWS_PER_00111]. وفي حالة انتهاكات السلامة، يوفر RecoverFile استعادة وفق أفضل جهد للبيانات المكررة [SWS_PER_00337]، بينما يعيد ResetFile ضبط ملف إلى محتوى توفيره الأولي أو ينشئه من جديد في حالة عدم وجوده [SWS_PER_00338].
حدود التخزين والحصص النسبية: عند الإنشاء الجديد أو التوسيع، قد يحدث PerErrc::kOutOfStorageSpace (امتلاء التخزين المادي)، أو PerErrc::kTooManyFiles (تجاوز maxNumberOfFiles)، أو PerErrc::kQuotaExceeded (تجاوز maximumAllowedSize) [SWS_PER_00113][SWS_PER_00337][SWS_PER_00338].
أخطاء السلامة والأمان: في حالة تعطل طبقة التخزين المادية، يتم الإبلاغ عن PerErrc::kPhysicalStorageFailure. وتؤدي هياكل البيانات التالفة أو عمليات التحقق الفاشلة أو مشكلات التشفير إلى PerErrc::kIntegrityCorrupted، أو PerErrc::kValidationFailed، أو PerErrc::kEncryptionFailed، أو PerErrc::kAuthenticationFailed[SWS_PER_00110][SWS_PER_00112][SWS_PER_00114][SWS_PER_00337].
البيانات الأولية المفقودة (PerErrc::kInitValueNotAvailable): تفشل العملية عند إعادة الضبط عبر ResetFile إذا لم تكن هناك قيم أولية محفوظة في Application Design ولا في تهيئة الهدف [SWS_PER_00338].
يستند هذا الدليل إلى مواصفة AUTOSAR Adaptive Platform الإصدار R25-11 ويلخص المتطلبات الوظيفية لـ ara::per::FileStorage.
Checks if a file exists in this File Storage. The result is only accurate if no file is added or deleted at the same time. E.g. when a file is removed in another thread directly after this function returned "true", the result is not valid anymore.
Returns a list of all currently available file names of this File Storage. The list of file names is only accurate if no file is added or deleted at the same time.
Returns the space in bytes currently occupied by the content of a file of this File Storage. The returned size might be inaccurate if any of the instances of a file is invalid or if another operation on the file takes place at the same time.
Returns additional information on a file of this File Storage. The returned FileInfo struct contains information about the times when the file was created, last modified, and last accessed, and about how and by whom the file was created and last modified. The modificationTime, accessTime, and fileModificationState returned in the FileInfo are only accurate if the file is currently not open.
Opens a file of this File Storage for reading with a defined mode. If not otherwise specified by the provided mode, the file is opened with the seek position set to the beginning (corresponding to kAtTheBeginning). The file will be closed when the returned UniqueHandle goes out of scope.
Opens a file of this File Storage for reading and writing with a defined mode. If not otherwise specified by the provided mode, the file is opened with the seek position set to the beginning (corresponding to kAtTheBeginning). If the file does not exist, it is created. The file will be closed when the returned UniqueHandle goes out of scope.
Opens a file of this File Storage for writing with a defined mode. If not otherwise specified by the provided mode, the file is truncated (corresponding to k Truncate). If the file does not exist, it is created. The file will be closed when the returned UniqueHandle goes out of scope.
Recovers a file of this File Storage. This method allows to recover a single file when the redundancy checks fail. It will fail with kResourceBusy when the file is currently open. This method does a best-effort recovery of the file. After recovery, the file might show outdated or initial content, or might be lost.
Resets a file of this File Storage to its initial content. ResetFile allows to reset a single file to its initial content. If the file is currently not available in the File Storage, it is re-created. Afterwards, the file will appear in both cases as if it was newly installed from the current Target Configuration. It will fail with kResourceBusy when the file is currently open, and with kInitValueNotAvailable when neither Application Design nor Target Configuration define an initial content for the file.
Deletes a file from this File Storage. This operation will fail with kResourceBusy when the file is currently open.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4416a2cc7c72المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تحذف الطريقة المتزامنة DeleteFile للفئة ara::per::FileStorage ملفًا بالاستناد إلى اسمه (fileName) من وحدة تخزين الملفات [SWS_PER_00111]. ويمكن أن يتطابق المعرّف مع PersistencyFile.fileName المُكوّن [SWS_PER_00111]. وقد حُدد الاستدعاء كـ noexcept، ويُعد آمنًا من الاستثناءات وكذلك آمنًا بالنسبة للخيوط، ويُبلغ عن النتيجة عبر ara::core::Result<void>[SWS_PER_00111].
قبل الاستدعاء، يجب إنهاء جميع عمليات الوصول النشطة إلى الملف الهدف. وإذا كان الملف مفتوحًا حاليًا، تفشل عملية الحذف بالخطأ PerErrc::kResourceBusy[SWS_PER_00111]. ولذلك يجب على التطبيقات التأكد من أن نُسخ UniqueHandle التي تم إنشاؤها مسبقًا عبر OpenFileReadWrite[SWS_PER_00113]، أو OpenFileReadOnly[SWS_PER_00114]، أو OpenFileWriteOnly[SWS_PER_00115] قد غادرت نطاق صلاحيتها، مما يؤدي إلى إغلاق الملف. وبالمثل، يؤدي تنفيذ RecoverFile[SWS_PER_00337] أو ResetFile[SWS_PER_00338] بالتوازي لنفس اسم الملف إلى PerErrc::kResourceBusy[SWS_PER_00111].
في حالة حدوث خطأ، يوفر النوع Result المُرجع أسبابًا محددة للخطأ [SWS_PER_00111]:
PerErrc::kFileNotFound: الملف المحدد غير موجود في وحدة تخزين الملفات [SWS_PER_00111].
PerErrc::kIllegalWriteAccess: تم تكوين تخزين الملفات (File Storage) ليكون للقراءة فقط [SWS_PER_00111].
PerErrc::kPhysicalStorageFailure: فشل الوصول إلى وسيط التخزين الفعلي (بدون دلالات التراجع) [SWS_PER_00111].
PerErrc::kIntegrityCorrupted، أو PerErrc::kEncryptionFailed، أو PerErrc::kAuthenticationFailed: أخطاء في التكامل الهيكلي، أو التشفير/فك التشفير، أو التحقق من MAC (كل منها مع دلالات التراجع)، بالإضافة إلى أخطاء خاصة بالشركة المصنعة [SWS_PER_00111].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويُستخدم كدليل إرشادي. والمواصفات الواردة في وثائق AUTOSAR هي وحدها الملزمة.
Checks if a file exists in this File Storage. The result is only accurate if no file is added or deleted at the same time. E.g. when a file is removed in another thread directly after this function returned "true", the result is not valid anymore.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: f0bea0a79212المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تتحقق الطريقة المتزامنة FileExists للفئة ara::per::FileStorage مما إذا كان هناك ملف موجوداً في وحدة تخزين الملفات المعنية [SWS_PER_00112]. الدالة مُعلنة كـ noexcept ولا تطلق أي استثناءات C++ [SWS_PER_00112].
الاستخدام
يتم تمرير fileName كـ ara::core::StringView كمعلمة، والتي يمكن أن تتطابق مع المُعرّف PersistencyFile.fileName لملف تم تكوينه [SWS_PER_00112]. وتُرجع قيمة الإرجاع ara::core::Result<bool> القيمة true إذا أمكن تحديد موقع الملف، وإلا فإنها تُرجع false[SWS_PER_00112].
معالجة الأخطاء
إذا فشل التحقق، فإن Result المُرجع لا يحتوي على قيمة منطقية بل على رمز خطأ [SWS_PER_00112]. وأسباب الخطأ المحددة هي:
PerErrc::kPhysicalStorageFailure عند فشل الوصول الفعلي إلى وحدة التخزين [SWS_PER_00112]،
PerErrc::kIntegrityCorrupted في حالة تلف السلامة الهيكلية للبيانات [SWS_PER_00112]،
PerErrc::kValidationFailed إذا تعذر ضمان صحة البيانات المخزنة [SWS_PER_00112]،
PerErrc::kEncryptionFailed عند فشل فك التشفير [SWS_PER_00112]،
PerErrc::kAuthenticationFailed عند فشل التحقق من MAC [SWS_PER_00112] بالإضافة إلى أخطاء محتملة خاصة بالشركة المصنعة [SWS_PER_00112].
التزامن والقيود
تم الإعلان عن الطريقة بأنها آمنة لخيوط المعالجة [SWS_PER_00112]. ومع ذلك، فإن نتيجة التحقق المقدمة تكون دقيقة فقط طالما لم تتم إضافة ملفات أو حذفها في وحدة التخزين في نفس الوقت؛ فإذا قام خيط معالجة آخر، على سبيل المثال، بإزالة ملف مباشرة بعد إرجاع true، فلن تعد النتيجة صالحة [SWS_PER_00112].
تم إنشاء ملاحظة الاستخدام هذه آليًا استنادًا إلى AUTOSAR R25-11.
A Result containing true if the file could be located or false if it couldn’t. In case of an error, it contains any of the errors defined below, or a vendor specific error.
Returns a list of all currently available file names of this File Storage. The list of file names is only accurate if no file is added or deleted at the same time.
Returns the space in bytes currently occupied by the content of a file of this File Storage. The returned size might be inaccurate if any of the instances of a file is invalid or if another operation on the file takes place at the same time.
Returns additional information on a file of this File Storage. The returned FileInfo struct contains information about the times when the file was created, last modified, and last accessed, and about how and by whom the file was created and last modified. The modificationTime, accessTime, and fileModificationState returned in the FileInfo are only accurate if the file is currently not open.
Opens a file of this File Storage for reading with a defined mode. If not otherwise specified by the provided mode, the file is opened with the seek position set to the beginning (corresponding to kAtTheBeginning). The file will be closed when the returned UniqueHandle goes out of scope.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: b7f6df93c4d9المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تفتح الدالة OpenFileReadOnly للفئة ara::per::FileStorage (المعلن عنها في #include "ara/per/file_storage.h") ملفًا محفوظًا للقراءة فقط مع وضع وصول محدد [SWS_PER_00114]. ما لم يُحدد خلاف ذلك عبر المعلمة mode، يتم تعيين موضع مؤشر القراءة افتراضيًا إلى بداية الملف (kAtTheBeginning) [SWS_PER_00114]. ويتم التنفيذ بشكل متزامن ويُرجع ara::core::Result<UniqueHandle<ReadAccessor>>. يستخدم المقبض دلالات RAII: بمجرد خروج نسخة UniqueHandle من نطاق صلاحيتها، يتم إغلاق الملف تلقائيًا [SWS_PER_00114].
فيما يتعلق بالتزامن، تم تحديد الدالة بأنها thread-safe وexception safe (مع noexcept) [SWS_PER_00114]. ومع ذلك، توجد قيود استدعاء وظيفية: إذا كان الملف الهدف مفتوحًا بالفعل أو إذا تم تنفيذ عمليات متزامنة مثل DeleteFile أو RecoverFile أو ResetFile باستخدام نفس اسم الملف، فإن الاستدعاء يفشل مع PerErrc::kResourceBusy[SWS_PER_00114].
في حالة الخطأ، يُرجع ara::core::Result أخطاءً خاصة بالشركة المصنعة أو رموز أخطاء قياسية من PerErrc أو StorageFailure[SWS_PER_00114]:
PerErrc::kFileNotFound: الملف المحدد غير موجود في وحدة تخزين الملفات [SWS_PER_00114].
PerErrc::kInvalidOpenMode: يحتوي الوضع المُمرر على تركيبة غير صالحة من الرايات [SWS_PER_00114].
StorageFailure: فشل الوصول إلى الذاكرة الفعلية [SWS_PER_00114].
PerErrc::kIntegrityCorrupted، أو PerErrc::kValidationFailed، أو PerErrc::kAuthenticationFailed، أو PerErrc::kEncryptionFailed: تلف السلامة الهيكلية، أو عدم كفاية التحقق، أو وجود خلل في فحص MAC، أو فشل فك التشفير [SWS_PER_00114].
في إطار التفاعل مع الواجهات الأخرى، يتيح FileStorage تحميلين زائدين مترابطين: متغير بدون معلمة وضع يفتح دائمًا عند بداية الملف [SWS_PER_00376]، بالإضافة إلى تحميل زائد مع ذاكرة تخزين مؤقت (ara::core::Span<ara::core::Byte> buffer)، ينفذ عبرها ReadAccessor القراءة بنظام الكتل لتسريع عمليات الوصول الصغيرة المتعددة [SWS_PER_00430].
تم توليد إشعار الاستخدام هذا تلقائيًا استنادًا إلى مواصفة AUTOSAR Adaptive R25-11.
rollback_semantics Returned if the file is already open, or if DeleteFile, RecoverFile, or ResetFile with the same file name is currently being executed.
Opens a file of this File Storage for reading. The file is opened with the seek position set to the beginning (corresponding to kAtThe Beginning). The file will be closed when the returned UniqueHandle goes out of scope.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 4286b0e81322المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تفتح الطريقة OpenFileReadOnly للفئة ara::per::FileStorage ملفًا تم استمراره للقراءة فقط مع حماية ضد الكتابة [SWS_PER_00376]. ويتم الاستدعاء عبر ملف الترويسة ara/per/file_storage.h مع تمرير اسم الملف fileName. ويتم ضبط موضع القراءة مبدئيًا على بداية الملف. وتُستخدم كقيمة إرجاع ara::core::Result، والتي توفر UniqueHandle<ReadAccessor> عند النجاح. ويُغلق الملف المفتوح تلقائيًا بمجرد أن يغادر هذا المقبض نطاق صلاحيته.
معالجة الأخطاء
إذا فشل التنفيذ، تحتوي النتيجة على رمز خطأ أو خطأ خاص بالشركة المصنعة [SWS_PER_00376]:
PerErrc::kFileNotFound: الملف المحدد غير موجود في وحدة التخزين.
PerErrc::kResourceBusy: الملف مفتوح بالفعل أو تجري معالجته في الوقت نفسه بواسطة DeleteFile أو RecoverFile أو ResetFile.
PerErrc::kPhysicalStorageFailure: فشل الوصول إلى وسيط التخزين الفعلي.
PerErrc::kIntegrityCorrupted، PerErrc::kValidationFailed، PerErrc::kEncryptionFailed، PerErrc::kAuthenticationFailed: خطأ في سلامة البنية، أو التحقق من صحة البيانات، أو فك التشفير، أو فحص MAC.
التزامن والتفاعل
تم تحديد الطريقة كـ thread-safe وexception safe وكذلك noexcept[SWS_PER_00376]. وتتوفر تحميلات زائدة للمتطلبات المتقدمة: متغير لتحديد OpenMode صراحةً [SWS_PER_00114] بالإضافة إلى توقيع مزود بمخزن مؤقت إضافي للمستخدم لتسريع عمليات القراءة الصغيرة على أساس الكتل [SWS_PER_00430].
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا بناءً على مواصفة AUTOSAR.
rollback_semantics Returned if the file is already open, or if DeleteFile, RecoverFile, or ResetFile with the same file name is currently being executed.
Opens a file of this File Storage for reading with a user provided buffer. If not otherwise specified by the provided mode, the file is opened with the seek position set to the beginning (corresponding to kAtTheBeginning). The provided buffer will be used by the ReadAccessor to implement block-wise reading to speed up multiple small accesses to the file. The file will be closed when the returned UniqueHandle goes out of scope.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: f3a0884b9d84المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تفتح الطريقة المتزامنة OpenFileReadOnly للفئة ara::per::FileStorage ملفًا محفوظًا لوصول القراءة باستخدام مخزن مؤقت يوفره المتصل [SWS_PER_00430]. وتتم تهيئة الوصول إلى الملف استنادًا إلى المعاملات fileName وmode وكذلك buffer (كـ ara::core::Span<ara::core::Byte>) [SWS_PER_00430]. وما لم يُحدد خلاف ذلك عبر mode، فإن موضع القراءة يكون افتراضيًا في بداية الملف (kAtTheBeginning) [SWS_PER_00430]. ويستخدم ReadAccessor الناتج نطاق الذاكرة الممرر لتسريع عمليات القراءة الصغيرة المتكررة عبر القراءة على أساس الكتل [SWS_PER_00430]. والمورد محمي عبر RAII: فبمجرد خروج UniqueHandle المرجع من نطاق الصلاحية، يُغلق الملف تلقائيًا [SWS_PER_00430].
فيما يتعلق بالتزامن، تم تحديد الدالة على أنها آمنة من حيث مؤشرات الترابط (thread-safe)، وآمنة من الاستثناءات (exception safe)، وnoexcept[SWS_PER_00430]. وفي حالة حدوث خطأ، يرجع ara::core::Result أخطاء خاصة بالشركة المصنعة أو رموز خطأ قياسية من PerErrc[SWS_PER_00430]:
PerErrc::kResourceBusy: الملف مفتوح بالفعل أو تجري معالجته في الوقت نفسه بواسطة DeleteFile أو RecoverFile أو ResetFile[SWS_PER_00430].
PerErrc::kFileNotFound: الملف المحدد غير موجود في وحدة تخزين الملفات [SWS_PER_00430].
PerErrc::kInvalidOpenMode: يحتوي الوضع الممرر على تركيبة غير صالحة من الخيارات [SWS_PER_00430].
أخطاء السلامة والأمان: PerErrc::kIntegrityCorrupted، أو PerErrc::kValidationFailed، أو PerErrc::kEncryptionFailed، أو PerErrc::kAuthenticationFailed (فشل فحص MAC) وكذلك StorageFailure في حالة أخطاء الوصول إلى التخزين الفعلي [SWS_PER_00430].
إلى جانب هذا المتغير ذي التخزين المؤقت، تتوفر لحالات الاستخدام التي لا تتطلب مخزنًا مؤقتًا مخصصًا من المستخدم التحميلات الزائدة [SWS_PER_00114] (مع mode) و[SWS_PER_00376] (مع fileName فقط).
تم إنشاء إشعار الاستخدام هذا آليًا بناءً على مواصفة AUTOSAR R25-11.
rollback_semantics Returned if the file is already open, or if DeleteFile, RecoverFile, or ResetFile with the same file name is currently being executed.
Opens a file of this File Storage for reading and writing with a defined mode. If not otherwise specified by the provided mode, the file is opened with the seek position set to the beginning (corresponding to kAtTheBeginning). If the file does not exist, it is created. The file will be closed when the returned UniqueHandle goes out of scope.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: cf05039b8020المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تفتح الطريقة المتزامنة OpenFileReadWrite للفئة ara::per::FileStorage ملفًا لعمليات القراءة والكتابة في الوضع المحدد mode[SWS_PER_00113]. ما لم يُحدد خلاف ذلك في الوضع، يُعيَّن مؤشر الملف افتراضيًا إلى البداية (kAtTheBeginning). وإذا لم يكن الملف موجودًا بعد، يتم إنشاؤه تلقائيًا [SWS_PER_00113]. تُرجع الدالة ara::core::Result مع UniqueHandle<ReadWriteAccessor>، والذي يغلق الملف تلقائيًا بمجرد مغادرة المقبض (Handle) لنطاق صلاحيته [SWS_PER_00113].
التزامن والقيود
الاستدعاء آمن خيطيًا (thread-safe) ولا يطلق استثناءات (noexcept) [SWS_PER_00113]. يجب ألا يكون الملف مفتوحًا بالفعل عند الاستدعاء. علاوة على ذلك، لا يجوز حدوث أي تنفيذ متزامن لـ DeleteFile أو RecoverFile أو ResetFile بنفس اسم الملف، وإلا فسيفشل الاستدعاء مع PerErrc::kResourceBusy[SWS_PER_00113].
معالجة الأخطاء
في حالة حدوث خطأ، يحتوي ara::core::Result على أكواد أخطاء محددة [SWS_PER_00113]:
PerErrc::kInvalidOpenMode: تركيبة غير صالحة من الرايات في mode الممرر.
PerErrc::kResourceBusy: الملف الهدف مفتوح بالفعل أو مشغول بعمليات ملف إدارية.
Access: وحدة التخزين مهيأة للقراءة فقط أو للكتابة لمرة واحدة فقط مع وجود المفتاح بالفعل.
PerErrc::kOutOfStorageSpace أو PerErrc::kTooManyFiles: عدم كفاية مساحة التخزين المادية أو تجاوز maxNumberOfFiles عند الإنشاء الجديد.
PerErrc::kPhysicalStorageFailure وPerErrc::kIntegrityCorrupted وPerErrc::kValidationFailed وPerErrc::kEncryptionFailed وPerErrc::kAuthenticationFailed: أخطاء الوصول إلى العتاد، أو هياكل بيانات تالفة، أو فشل عمليات التحقق التشفيرية.
تفاعل
كنسخة مبسطة، يتوفر تحميل زائد (overload) بدون معلمة الوضع، والذي يفتح الملفات افتراضيًا عند البداية [SWS_PER_00375]. لتحسين الأداء عند إجراء العديد من عمليات الوصول الصغيرة، يوجد أيضًا تحميل زائد مع مخزن مؤقت مخصص للمستخدم (buffer) للقراءة والكتابة على مستوى الكتل [SWS_PER_00429].
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي استنادًا إلى مواصفة AUTOSAR Adaptive الإصدار R25-11.
rollback_semantics Returned if the file is already open, or if DeleteFile, RecoverFile, or ResetFile with the same file name is currently being executed.
Opens a file of this File Storage for reading and writing. The file is opened with the seek position set to the beginning (corresponding to kAtThe Beginning). If the file does not exist, it is created. The file will be closed when the returned UniqueHandle goes out of scope.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: e0c7dc90877bالمصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم دالة العضو المتزامنة OpenFileReadWrite للفئة ara::per::FileStorage لفتح ملف لعمليات الوصول المشتركة للقراءة والكتابة [SWS_PER_00375]. ويُمرر اسم الملف fileName كـ ara::core::StringView كمعامل، والذي يمكن أن يطابق نمذجة PersistencyFile.fileName لملف تم تكوينه [SWS_PER_00375]. وإذا لم يكن الملف المحدد موجودًا بعد، فسيتم إنشاؤه تلقائيًا من جديد [SWS_PER_00375]. وعند الفتح، يتم تعيين موضع الملف مباشرةً في البداية (وفقًا لـ kAtTheBeginning) [SWS_PER_00375]. ويحصل المتصل على ara::core::Result<UniqueHandle<ReadWriteAccessor>>؛ ويُغلق الملف تلقائيًا بمجرد خروج UniqueHandle المُرجع من نطاق صلاحيته [SWS_PER_00375].
فيما يتعلق بالتزامن وسياق التنفيذ، تم تحديد الدالة على أنها thread-safe وexception safe[SWS_PER_00375]. ومع ذلك، تجدر الإشارة إلى أن الوصول المتزامن منظم ومقيد: فإذا كان الملف مفتوحًا بالفعل أو كانت هناك عملية مثل DeleteFile أو RecoverFile أو ResetFile تُنفذ في الوقت نفسه على نفس اسم الملف، فإن الاستدعاء يفشل ويُرجع رمز الخطأ PerErrc::kResourceBusy[SWS_PER_00375].
في حالة حدوث خطأ، يغلف كائن Result المُرجع أخطاء معينة خاصة بالاستمرارية أو أخطاء خاصة بالشركة المصنعة [SWS_PER_00375]:
أخطاء التكوين والوصول مثل Access في حالة الذاكرة المحمية ضد الكتابة أو البيانات الموجودة بالفعل عند تكوين الكتابة لمرة واحدة (Write-Once) [SWS_PER_00375].
حدود مساحة التخزين الناتجة عن PerErrc::kOutOfStorageSpace أو PerErrc::kTooManyFiles عند تجاوز الحد الأقصى للملف المكوّن [SWS_PER_00375].
أخطاء السلامة والأمان مثل PerErrc::kPhysicalStorageFailure، أو PerErrc::kIntegrityCorrupted، أو PerErrc::kValidationFailed، أو PerErrc::kEncryptionFailed، أو PerErrc::kAuthenticationFailed[SWS_PER_00375].
بالتكامل مع واجهات أخرى من FileStorage، يقدم AUTOSAR تحميلاً زائداً بديلاً: يمكن استدعاء OpenFileReadWrite مع OpenMode صريح [SWS_PER_00113] أو مع مساحة تخزين إضافية من جانب المستخدم buffer (ara::core::Span<ara::core::Byte>)، والتي تتيح التخزين المؤقت على مستوى الكتل لتسريع عمليات الوصول المتكررة الصغيرة [SWS_PER_00429].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي وتمت مراجعته استنادًا إلى مواصفات AUTOSAR.
rollback_semantics Returned if the file is already open, or if DeleteFile, RecoverFile, or ResetFile with the same file name is currently being executed.
Opens a file of this File Storage for reading and writing with a user provided buffer. If not otherwise specified by the provided mode, the file is opened with the seek position set to the beginning (corresponding to kAtTheBeginning). The provided buffer will be used by the ReadWriteAccessor to implement block-wise reading and writing to speed up multiple small accesses to the file. If the file does not exist, it is created. The file will be closed when the returned UniqueHandle goes out of scope.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 06577277e905المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تفتح الطريقة OpenFileReadWrite للفئة ara::per::FileStorage ملفًا بشكل متزامن للقراءة والكتابة المدمجة مع توفير مخزن مؤقت يحدده المستخدم [SWS_PER_00429]. ويُستخدم نطاق الذاكرة الممرر buffer (كـ ara::core::Span<ara::core::Byte>) داخليًا بواسطة ReadWriteAccessor لعمليات القراءة والكتابة على أساس الكتل، وذلك لمعالجة سلاسل عمليات الوصول الصغيرة بأداء عالٍ. وإذا لم يكن الملف المحدد موجودًا بعد، فإنه يُنشأ تلقائيًا من جديد؛ ويكون موضع الملف افتراضيًا في البداية (kAtTheBeginning)، ما لم يُحدد خلاف ذلك في mode الممرر [SWS_PER_00429]. ويُغلق الملف بمجرد خروج UniqueHandle المرجع في ara::core::Result من نطاق الصلاحية. تفسير: يُفترض أن تظل الذاكرة الأساسية لنطاق المخزن المؤقت الممرر صالحة طوال دورة حياة UniqueHandle بأكملها، نظرًا لأن الموصّل يشير إليها لإجراء عمليات الوصول على أساس الكتل. سؤال Q-e0009b7de17e3597 (مفتوح)
معالجة الأخطاء والتزامن
تم تحديد الدالة كـ noexcept، وهي آمنة من الاستثناءات (exception safe) وآمنة من حيث مؤشرات الترابط [SWS_PER_00429]. وفي حالات الفشل، يرجع Result أخطاء خاصة بالشركة المصنعة أو رموز خطأ محددة:
PerErrc::kResourceBusy: الملف مفتوح بالفعل أو تجري معالجته في الوقت نفسه بالاسم نفسه بواسطة DeleteFile أو RecoverFile أو ResetFile[SWS_PER_00429].
Access: نطاق التخزين مهيأ كـ read-only أو محدد كـ write-only-once وهو مشغول بالفعل [SWS_PER_00429].
PerErrc::kInvalidOpenMode: يحتوي mode الممرر على تركيبة غير صالحة من السمات [SWS_PER_00429].
PerErrc::kOutOfStorageSpace أو PerErrc::kTooManyFiles: مساحة التخزين الفعلية غير كافية لإنشاء جديد أو سيتم تجاوز الحد المكون maxNumberOfFiles[SWS_PER_00429].
PerErrc::kPhysicalStorageFailure وPerErrc::kIntegrityCorrupted وPerErrc::kValidationFailed وPerErrc::kEncryptionFailed وPerErrc::kAuthenticationFailed: أخطاء عند الوصول، أو فحص السلامة، أو MAC، أو التحقق من الصحة، بالإضافة إلى فك التشفير [SWS_PER_00429].
تفاعل
تمثل الطريقة متغيرًا محسن الأداء لعملية الفتح للقراءة/الكتابة: فبينما يعالج [SWS_PER_00113] اسم الملف والوضع فقط، ويعالج [SWS_PER_00375] اسم الملف حصرًا، يتيح [SWS_PER_00429] التسريع المستهدف لعمليات الإدخال/الإخراج الصغيرة عبر مخزن مؤقت صريح في الذاكرة.
تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويستند إلى متطلبات مواصفة AUTOSAR.
rollback_semantics Returned if the file is already open, or if DeleteFile, RecoverFile, or ResetFile with the same file name is currently being executed.
Opens a file of this File Storage for writing with a defined mode. If not otherwise specified by the provided mode, the file is truncated (corresponding to k Truncate). If the file does not exist, it is created. The file will be closed when the returned UniqueHandle goes out of scope.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: cf72b60c71fbالمصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تفتح الطريقة OpenFileWriteOnly للفئة ara::per::FileStorage ملفاً بشكل متزامن للكتابة الحصرية بوضع وصول محدد [SWS_PER_00115]. ما لم يُنص على خلاف ذلك عبر المعامل mode، يتم اقتطاع الملف (وفقاً لـ kTruncate). إذا لم يكن الملف موجوداً بعد، فسيتم إنشاؤه من جديد. يتم استخدام ara::core::Result<UniqueHandle<WriteAccessor>> كقيمة إرجاع؛ وعند مغادرة نطاق صلاحية UniqueHandle، يُغلق الملف تلقائياً مرة أخرى [SWS_PER_00115].
معالجة الأخطاء
في حالة حدوث خطأ، يحتوي Result المُرجع على رموز خطأ محددة [SWS_PER_00115]: يشير Access إلى أن التخزين للقراءة فقط أو تم تكوينه كـ Write-Once والمفتاح موجود بالفعل. يبلغ PerErrc::kInvalidOpenMode عن تركيبات أوضاع غير صالحة و PerErrc::kOutOfStorageSpace عن مساحة تخزين فعلية غير كافية. علاوة على ذلك، قد يحدث PerErrc::kTooManyFiles و PerErrc::kPhysicalStorageFailure بالإضافة إلى أخطاء السلامة والأمان مثل PerErrc::kIntegrityCorrupted أو PerErrc::kValidationFailed أو PerErrc::kEncryptionFailed أو PerErrc::kAuthenticationFailed[SWS_PER_00115].
التزامن والقيود
تم تصميم الدالة لتكون آمنة لمؤشرات الترابط وآمنة من الاستثناءات (noexcept) [SWS_PER_00115]. تفشل عمليات الوصول المتوازية إلى نفس الملف مع رمز الخطأ PerErrc::kResourceBusy، إذا كان الملف مفتوحاً بالفعل أو إذا تم تنفيذ عمليات مثل DeleteFile أو RecoverFile أو ResetFile في نفس الوقت بنفس اسم الملف [SWS_PER_00115].
تفاعل
بالإضافة إلى هذه الدالة، توفر الواجهة تحميلاً زائداً مبسطاً بدون معامل الوضع، والذي يعمل افتراضياً مع kTruncate[SWS_PER_00377]، بالإضافة إلى تحميل زائد مع مخزن مؤقت مخصص من قِبل المستخدم لتمكين الكتابة على دفعات من أجل تسريع العديد من عمليات الوصول الصغيرة [SWS_PER_00431].
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بناءً على المواصفة.
rollback_semantics Returned if the file is already open, or if DeleteFile, RecoverFile, or ResetFile with the same file name is currently being executed.
Opens a file of this File Storage for writing. The file is truncated (corresponding to kTruncate). If the file does not exist, it is created. The file will be closed when the returned UniqueHandle goes out of scope.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: fa6d3b80cd05المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تفتح الطريقة المتزامنة OpenFileWriteOnly للفئة ara::per::FileStorage ملفًا مخصصًا للكتابة فقط وفقًا لـ [SWS_PER_00377]. وتستلم اسم الملف الهدف عبر المعامل fileName. وإذا لم يكن الملف موجودًا، فإنه يُنشأ من جديد؛ أما إذا كان الملف موجودًا بالفعل فيتم اقتطاعه (وفقًا لـ kTruncate) [SWS_PER_00377]. وتعمل القيمة ara::core::Result كقيمة إرجاع، حيث تغلف ara::per::UniqueHandle<WriteAccessor> عند النجاح. ويغلق مقبض التحكم هذا الملف تلقائيًا وفقًا لنمط RAII بمجرد خروجه من نطاق الصلاحية [SWS_PER_00377].
معالجة الأخطاء والتزامن
تم التصريح عن العملية كـ noexcept، وهي آمنة من الاستثناءات وآمنة من حيث مؤشرات الترابط [SWS_PER_00377]. وفي حالة حدوث خطأ، يحتوي Result على رمز خطأ محدد من PerErrc أو خطأ خاص بالشركة المصنعة [SWS_PER_00377]:
PerErrc::kResourceBusy: الملف مفتوح بالفعل أو تجري معالجته في الوقت نفسه بواسطة DeleteFile أو RecoverFile أو ResetFile.
PerErrc::kOutOfStorageSpace وPerErrc::kTooManyFiles: سعة التخزين الفعلية غير كافية أو تم تجاوز الحد الأقصى لعدد الملفات المكونة (maxNumberOfFiles).
PerErrc::kPhysicalStorageFailure، أو PerErrc::kIntegrityCorrupted، أو PerErrc::kValidationFailed، أو PerErrc::kEncryptionFailed، أو PerErrc::kAuthenticationFailed: خطأ عند الوصول إلى العتاد بالإضافة إلى فحوصات السلامة أو التحقق من الصحة أو فك التشفير.
تفاعل
بينما يحدد هذا المتغير الاقتطاع بشكل ثابت، يتيح التحميل الزائد مع المعامل OpenMode نمط فتح مختلفًا [SWS_PER_00115]. ولإجراء عمليات كتابة محسنة تعتمد على الكتل مع عمليات وصول صغيرة متعددة، يتوفر تحميل زائد إضافي مزود بمخزن مؤقت يحدده المستخدم (ara::core::Span<ara::core::Byte>) [SWS_PER_00431].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR Adaptive R25-11.
rollback_semantics Returned if the file is already open, or if DeleteFile, RecoverFile, or ResetFile with the same file name is currently being executed.
Opens a file of this File Storage for writing with a user provided buffer. If not otherwise specified by the provided mode, the file is truncated (corresponding to k Truncate). The provided buffer will be used by the ReadWriteAccessor to implement block-wise writing to speed up multiple small accesses to the file. If the file does not exist, it is created. The file will be closed when the returned UniqueHandle goes out of scope.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 37dc6b2848d7المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تفتح الطريقة المتزامنة OpenFileWriteOnly للفئة ara::per::FileStorage ملفًا للكتابة الحصرية وترجع ara::core::Result<UniqueHandle<WriteAccessor>> في حالة النجاح [SWS_PER_00431]. وعند الخروج من نطاق صلاحية UniqueHandle المرجع، يُغلق الملف المفتوح تلقائيًا [SWS_PER_00431]. ويستلم الاستدعاء، إلى جانب اسم الملف fileName ووضع الوصول mode، مخزنًا مؤقتًا من جانب المستخدم buffer (كـ ara::core::Span<ara::core::Byte>)، والذي يُستخدم للكتابة على أساس الكتل لتسريع عمليات الكتابة الصغيرة المتكررة [SWS_PER_00431]. وإذا لم يتم ضبط إعدادات مغايرة في الوضع، فسيتم اقتطاع الملف عند الفتح (وفقًا لـ kTruncate)؛ وإذا لم يكن موجودًا بعد، فسيتم إنشاؤه من جديد [SWS_PER_00431].
فيما يتعلق بالتزامن والأمان، تم تحديد الطريقة كـ thread-safe وexception safe والتصريح عنها كـ noexcept[SWS_PER_00431]. ومع ذلك، يفشل الوصول إذا كان الملف مفتوحًا بالفعل أو إذا نُفذت في الوقت نفسه عمليات إدارة مثل DeleteFile أو RecoverFile أو ResetFile على اسم الملف نفسه [SWS_PER_00431].
في حالة حدوث خطأ، يتم إرجاع رمز خطأ مطابق من PerErrc أو خطأ خاص بالشركة المصنعة في النتيجة [SWS_PER_00431]:
PerErrc::kResourceBusy: الملف مفتوح بالفعل أو مشغول بعملية ملف أخرى [SWS_PER_00431].
PerErrc::kIllegalWriteAccess: وحدة File Storage محمية ضد الكتابة أو مهيأة كـ write-only-once والملف موجود بالفعل [SWS_PER_00431].
PerErrc::kInvalidOpenMode: تركيبة الأوضاع الممررة غير صالحة [SWS_PER_00431].
PerErrc::kOutOfStorageSpace أو PerErrc::kTooManyFiles: مساحة التخزين غير كافية أو تم تجاوز الحد الأقصى لعدد الملفات المكونة [SWS_PER_00431].
PerErrc::kPhysicalStorageFailure، أو PerErrc::kIntegrityCorrupted، أو PerErrc::kValidationFailed، أو PerErrc::kEncryptionFailed، أو PerErrc::kAuthenticationFailed: خطأ في الوصول الفعلي، أو السلامة، أو التحقق من الصحة، أو فك التشفير، أو المصادقة [SWS_PER_00431].
في سياق التفاعل مع الواجهات الأخرى، توسع الدالة الطرق الأساسية [SWS_PER_00377] (fileName فقط) و[SWS_PER_00115] (مع mode) بشكل مستهدف لتشمل دعم المخزن المؤقت لعمليات الكتابة المحسنة [SWS_PER_00431].
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا استنادًا إلى مواصفات AUTOSAR R25-11.
rollback_semantics Returned if the file is already open, or if DeleteFile, RecoverFile, or ResetFile with the same file name is currently being executed.
Recovers a file of this File Storage. This method allows to recover a single file when the redundancy checks fail. It will fail with kResourceBusy when the file is currently open. This method does a best-effort recovery of the file. After recovery, the file might show outdated or initial content, or might be lost.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 1adb8f07ad8eالمصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تُنفذ الطريقة المتزامنة RecoverFile للفئة ara::per::FileStorage استعادة بأقصى جهد لملف فردي عند فشل عمليات التحقق من التكرار التشغيلي [SWS_PER_00337]. ويتم تمرير معرّف الملف المعني عبر المعامل fileName كـ ara::core::StringView. وبعد الاستعادة، قد يحتوي الملف على إصدارات قديمة أو على المحتوى الأولي، أو قد يُفقد في أسوأ الحالات [SWS_PER_00337].
التزامن والتفاعل
تم تحديد العملية على أنها آمنة بالنسبة للخيوط وآمنة من الاستثناءات [SWS_PER_00337]. ومع ذلك، لا يجوز تنفيذها على ملفات مفتوحة: فقبل الاستدعاء، يجب إغلاق جميع نُسخ UniqueHandle التي تم الحصول عليها مسبقًا عبر طرق فتح الملفات مثل [SWS_PER_00113]، أو [SWS_PER_00114]، أو [SWS_PER_00375][SWS_PER_00337]. وإلا، فسيفشل الاستدعاء مع PerErrc::kResourceBusy. ويُبلّغ عن الخطأ ذاته إذا نُفّذ [SWS_PER_00111] (DeleteFile) أو [SWS_PER_00338] (ResetFile) في الوقت نفسه لنفس اسم الملف [SWS_PER_00337].
معالجة الأخطاء
تُرجع الدالة ara::core::Result<void>[SWS_PER_00337]. وبصرف النظر عن PerErrc::kResourceBusy، يمكن أن تحدث الأخطاء المعيارية التالية:
PerErrc::kFileNotFound: الملف المحدد غير موجود في وحدة تخزين الملفات [SWS_PER_00337].
PerErrc::kPhysicalStorageFailure: فشل الوصول إلى وسيط التخزين الفعلي [SWS_PER_00337].
PerErrc::kOutOfStorageSpace: مساحة التخزين الفعلية المتاحة غير كافية للملف المستعاد [SWS_PER_00337].
PerErrc::kQuotaExceeded: الملف المستعاد سيتجاوز الحد المكوّن maximumAllowedSize[SWS_PER_00337].
PerErrc::kEncryptionFailed وPerErrc::kAuthenticationFailed: فشل فك التشفير التشفيري أو التحقق من صحة MAC للبيانات المخزنة [SWS_PER_00337].
تم إنشاء إشعار الاستخدام هذا آليًا بناءً على مواصفة AUTOSAR R25-11.
Resets a file of this File Storage to its initial content. ResetFile allows to reset a single file to its initial content. If the file is currently not available in the File Storage, it is re-created. Afterwards, the file will appear in both cases as if it was newly installed from the current Target Configuration. It will fail with kResourceBusy when the file is currently open, and with kInitValueNotAvailable when neither Application Design nor Target Configuration define an initial content for the file.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 16bebc8c99d8المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُعيد الطريقة المتزامنة ResetFile للفئة ara::per::FileStorage تعيين ملف فردي إلى حالته الأولية المُهيأة مسبقًا [SWS_PER_00338]. وإذا لم يكن الملف المحدد عبر fileName موجودًا بالفعل في التخزين، فإنه يُنشأ من جديد [SWS_PER_00338]. وفي كلتا الحالتين، يحتوي الملف بعد ذلك على المحتوى نفسه كما بعد التثبيت الجديد من Target Configuration الحالية [SWS_PER_00338]؛ وتتم إدارة حالة التعديل الخاصة به في FileModificationState بوصفها kModifiedDuringReset[SWS_PER_00436].
العملية آمنة بالنسبة للخيوط وكذلك آمنة من الاستثناءات وتُرجع ara::core::Result<void> بشكل متزامن [SWS_PER_00338]. وتفشل مع PerErrc::kResourceBusy إذا كان الملف مفتوحًا حاليًا – مثلًا عبر [SWS_PER_00113] – أو إذا كان تنفيذ [SWS_PER_00111] أو [SWS_PER_00337] بنفس اسم الملف يجري في الوقت نفسه [SWS_PER_00338].
علاوة على ذلك، تُحدد الواجهة حالات خطأ محددة [SWS_PER_00338]:
PerErrc::kInitValueNotAvailable: لم يتم تكوين أي قيمة أولية لا في Application Design ولا في Target Configuration [SWS_PER_00338].
PerErrc::kQuotaExceeded أو PerErrc::kTooManyFiles: الملف المستعاد سيتجاوز الحد AllowedSize أو maxNumberOfFiles[SWS_PER_00338].
PerErrc::kOutOfStorageSpace أو StorageFailure: مساحة التخزين الفعلية غير كافية أو فشل الوصول الفعلي [SWS_PER_00338].
PerErrc::kEncryptionFailed أو PerErrc::kAuthenticationFailed: فشل التشفير أو فك التشفير أو التحقق من MAC للبيانات المخزنة [SWS_PER_00338].
تم إعداد ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بالاستناد إلى مواصفة AUTOSAR Adaptive R25-11.
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني