Ala2 VB

أفضل كتاب لفهم بنية الحاسب

12 ردود في هذا الموضوع

بسم الله الرحمن الرحيم

السلام عليكم ورحمة الله وبركاته

أحتاج إلى كتب أو مراجع جيدة تشرح البنية الداخلية للحاسب , وتحديداً كيف تُخزن الملفات وكيف يقرأها النظام , وبالأخص الملفات التنفيذية . وأيضاً التعامل مع الملفات كأجزاء (مثل برامج التورنت التي تقسم الملفات التي تقوم بقراءتها وتحميلها) , و قراءة الملفات وكتابتها على صورة binary او hex .

الحقيقة ليس لدي علم كافي بهذه المجالات , لذا قد يكون وصفي السابق غير دقيق .

أرجو ممن لديه علم بكتب او مراجع جيدة في هذا المجال ان يدلني على اسمائها , ولو وجد كتاب واحد جامع لهذه النقاط يكون أفضل .

وجزاكم الله خيراً :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الكيفية التى يخزن بها النظام الملفات و يسترجعها بها تختلف من نظام لأخر و كذلك بنية الملفات التنفيذيه.

بالنسبه للملفات التنفيذيه يوجد مرجع لبنية الملف التنفيذي لنظام ويندوز يمكنك الحصول على نسخة 1998 من هذه المشاركه و نسخة 2008 من هذه المشاركه.

يمكنك استخدام دوال التعامل مع الملفات المتاحه بلغة الـ C لقراءة و كتابه ملفات نفس الكلام ينطبق على لغة الـ Cpp و حينها يمكنك ايضا استخدام فئات fstream. بكلا اللغتين يمكنك استخدام دوال Win32 API للتعامل مع الملفات بأى هيئه تريد.

الجمله "التعامل مع الملفات كأجزاء" تختلف فى معناها من حيث طبيعة الإستخدام فمثلا برامج الـ Hex Editor تقوم بأخذ view للجزء من الملف الذى تراه فقط - تقرأ عدد كامل من الـ sectors - بالنسبه لبرامج التورنت فالأمر يختلف كثيرا حيث الملف عباره عن مجموعة من القطع و كل قطعه لها مساحه معينه و بالتالي الملف بأكمله يتم تقسيمه تبعا لهذه الأجزاء و عندما يستقبل برنامج التورنت بيانات لهذه الأجزاء لا يقوم بكتابتها مباشرة داخل الملف و إنما يكتبها داخل الـ cache و عندما تمتلئ يقوم بحفظ المحتويات داخل الملف.

و الله ولي التوفيق

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الكيفية التى يخزن بها النظام الملفات و يسترجعها بها تختلف من نظام لأخر و كذلك بنية الملفات التنفيذيه.

بالنسبه للملفات التنفيذيه يوجد مرجع لبنية الملف التنفيذي لنظام ويندوز يمكنك الحصول على نسخة 1998 من هذه المشاركه و نسخة 2008 من هذه المشاركه.

يمكنك استخدام دوال التعامل مع الملفات المتاحه بلغة الـ C لقراءة و كتابه ملفات نفس الكلام ينطبق على لغة الـ Cpp و حينها يمكنك ايضا استخدام فئات fstream. بكلا اللغتين يمكنك استخدام دوال Win32 API للتعامل مع الملفات بأى هيئه تريد.

الجمله "التعامل مع الملفات كأجزاء" تختلف فى معناها من حيث طبيعة الإستخدام فمثلا برامج الـ Hex Editor تقوم بأخذ view للجزء من الملف الذى تراه فقط - تقرأ عدد كامل من الـ sectors - بالنسبه لبرامج التورنت فالأمر يختلف كثيرا حيث الملف عباره عن مجموعة من القطع و كل قطعه لها مساحه معينه و بالتالي الملف بأكمله يتم تقسيمه تبعا لهذه الأجزاء و عندما يستقبل برنامج التورنت بيانات لهذه الأجزاء لا يقوم بكتابتها مباشرة داخل الملف و إنما يكتبها داخل الـ cache و عندما تمتلئ يقوم بحفظ المحتويات داخل الملف.

و الله ولي التوفيق

جزاك الله خيراً أخي محمد

حالياً اقصد بنية ويندوز وبالاخص win7 وما يليه

اعتقد اني فهمت طريقة ملفات التورنت فهي تجزئ الملف نفسه إلى ملفات صغير (لان الملف لن يمكن استعماله من قبل اكثر من مستخدم في نفس الوقت على حد علمي) , لكن ماذا قصدت "بالجزء الذي تراه فقط" هل هناك اجزاء اخرى غير مرئية او لا يعرضها المحرر ؟

وبغض النظر عن الدوال الجاهزة التي تتيح التعامل مع الملفات , اود معرفة الطريقة الاصلية او المبدأ الذي تعمل عليه هذه الدوال . وطريقة القراءة والكتابة التي تعمل بها برامج التورنت ان امكن

وجزاك الله خيراً

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

كتاب رائع جدا

Foundations of computer science 2nd edition

Foundations-of-Computer-Science-Forouzan-Behrouz-A-9781844807000.jpg

وهو مقرر في بعض الجامعات كمدخل لعلوم الحاسب

ميزة الكتاب أنه يشرح بالصور

وما فيه حشو كثير يتبع طريقة Keep it simple

يمكن يكون الكتاب الانجليزي الوحيد الي قريته في الجامعة كاملا

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
اعتقد اني فهمت طريقة ملفات التورنت فهي تجزئ الملف نفسه إلى ملفات صغير (لان الملف لن يمكن استعماله من قبل اكثر من مستخدم في نفس الوقت على حد علمي)

شرح نظام عمل التورنت سيأخذ مني وقت طويل لذا اقرأ الـ Specification الخاصه به و ستعلم كيف يعمل.

لكن ماذا قصدت "بالجزء الذي تراه فقط" هل هناك اجزاء اخرى غير مرئية او لا يعرضها المحرر ؟

فلنفترض انك تريد رؤية محتويات ملف مساحته 2 جيجا، حينها يقوم المحرر بفتح الملف و لكن لا يقرء منه إلا عدد معين من الـ sectors و الذى يكفي فقط لملء الجزء الخاص بالعرض امامك و عندما تقوم بعمل scroll يتم عمل mapping لجزء اخر من الملف داخل الـ buffer الخاص بالمحرر و من ثم عمل render له امامك.

اود معرفة الطريقة الاصلية او المبدأ الذي تعمل عليه هذه الدوال

يحتوى ويندوز على Drivers للتعامل مع بعض الـ File Systems مثل NTFS و FAT. لذا عندما تستدعي الداله WriteFile تقوم ببدء سلسلة استدعاءات تنتهي عند الـ Driver الخاص بالـ File system للمكان الذى تريد الكتابه فيه و الذي بدوره يقوم بإرسال أمر للـ HD controller كي يبدء عملية الكتابة الفعليه.

عملية الكتابة نفسها تتخللها بعض الخطوات حيث يمكن ان يقوم الـ HD بأخذ البيانات مباشرة من الذاكره - DMA - او يتم إستخدام الإسلوب التقليدي - PIO - هذا علي حسب إعدادات الـ HD ألموجوده لديك فى الـ Device Manager.

أيا كانت الطريقه التى سيتم إستخدامها لكتابة البيانات داخل الـ HD فإن عملية الكتابة لا تتم بشكل مباشر حيث يقوم الـ HD - بشكل إختيارى - بإستخدام الـ buffer cache الموجوده به لحفظ البيانات مؤقتا حتى يتم الحصول على البيانات التاليه التى سيتم حفظها.

و الله ولي التوفيق

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

كتاب رائع جدا

Foundations of computer science 2nd edition

فعلاً من أفضل الكتب . أي شخص مهتم بعلوم الحاسب يجب أن يقتنيه :-) لأنه يشرح كل شيء و يعطيك طرف الخيط في أغلب المجالات. و مؤلف الكتاب أسلوبه ممتاز و له كتب كثيرة مميزة ، @forouzan behrouz

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ممكن رابط تحميل كتاب Foundations of computer science 2nd edition

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

http://www.amazon.com/Computer-Systems-Programmers-Perspective-2nd/dp/0136108040

This book (CS:APP) is for computer scientists, computer engineers, and others

who want to be able to write better programs by learning what is going on “under

the hood” of a computer system.

You are poised for an exciting journey. If you dedicate yourself to learning the

concepts in this book, then you will be on your way to becoming a rare “power programmer,”

enlightened by an understanding of the underlying computer system

and its impact on your application programs.

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ممكن رابط تحميل كتاب Foundations of computer science 2nd edition

الكتاب غير مجاني وتستطيع شراءه من الأمازون عن طريق الرابط الذي وضعه الأخ وجدي .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

جزاك الله أخي محمد على الشرح :) والأخ بارع على الكتاب :)

الحقيقة انا اود معرفة كيفية عمل محررات hex وأمثالها التي تتعامل مع الملفات بشكل "عميق" , و اسلوب تقسيم الملفات وكتابتها بشيء من التفصيل , وأيضاً كيفية تعامل نظام ويندوز أو لينكس (أو انظمة التشغيل بشكل عام) مع الملفات ووحدات التخزين .. لانني اكتشفت ان لدي جهل كبير بهذا المجال :dry:

فهل هناك كتاب/كتب -غير ما ذكر- تتعرض لهذه المفاهيم وتوضح تطبيقاتها بشيء من التفصيل ؟ بغض النظر عن لغة البرمجة المستخدمة او حتى بدون امثلة , المهم شرحه جيد

وجزاكم الله خيراً :)

تم تعديل بواسطه Delphawi
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

راجع كتاب الديناصورات المشهور

تحصل في الكتاب

Part Four: Storage Management

Chapter 10, 11, 12, 13

مع أني ما حبيت الكتاب لكنه أشهر كتاب في الـ OS وهو المقرر الأساسي لهذي المادة في أغلب جامعات العالم

الكتاب موجود في هذا الموضوع

http://www.arabteam2000-forum.com/index.php?showtopic=172002&st=20

روابط ذات علاقة

http://en.wikipedia.org/wiki/File_system

http://en.wikipedia.org/wiki/Operating_system#Disk_access_and_file_systems

تم تعديل بواسطه بـارع
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

ملاحظة : لا ينبغي وضع روابط لتحميل كتب بشكل غير شرعي . ما مضى من روابط في المنتدى لا نتتبعه ،لكن ما وقعت عليه عيني أقوم بإخفاءه :-) . نضع اسم الكتاب و من أراد الحصول عليه يستطيع الحصول عليه بطريقته ، المعذرة :-) .

5

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .