• الإعلانات

    • فيصل الحربي

      تسجيل عضوية جديدة في المنتدى   01/31/2016

      السلام عليكم ورحمة الله وبركاته  عزيزي العضو الجديد :  حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة )  فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK)  وقم بتفعيل إشتراككم من هناك   

محمود فايد

اعضاء
  • عدد المشاركات

    82
  • تاريخ الانضمام

  • تاريخ اخر زياره

السمعه بالموقع

1 عادي

عن محمود فايد

  • الرتبة
    عضو
  • تاريخ الميلاد 12/29/1986

طرق الإتصال

معلومات الملف الشخصي

  • الجنس ذكر

أحدث الزائرين لملفلك الشخصي

2,075 زياره للملف الشخصي
  1. اخى الكريم اليك ايضا - شاشة التحميل الخاصة بالمشروع - وهى من ابداع احد الاخوة - الفنان احمد سمير - وقام باهدائه الى المشروع مع تحياتى محمود فايد
  2. اخى الكريم لقد جلبت لك بعض صور المشروع - حتى تثق فى الامر - ويتضح اكثر ما قمت بعمله فى هذا المجال - حتى يثق الاخرين فيما تم - ويبحثون فى نقاط اخرى - فكما تعلم ان الاتحاد قوة- وكلنا بحاجة اليه - ويمكن ان نلتقى معا فى مشروع واحد فى المستقبل باذن الله هذه صورة مصمم نماذج تابع للمشروع وهذه صورة برنامج مبيعات يرتكز على واجهة المشروع والان اهدى لك المشروع برغبتى - http://www.souceforge.net/projects/fglib وتقبل ارق تحياتى محمود فايد
  3. اخى الكريم حسنا - اسحب كلامى وانا تشرفت بمعرفة حضرتك - وكل سنة وحضرتك طيب - وباذن الله لنا لقاءات علمية مثمرة من خلال المنتدى ان شاء الله مع تحياتى محمود فايد
  4. اخى الكريم اسمح لى ان اختلف معك من الناحية العلمية - فان الملف الناتج بالفعل ياخذ الامتداد COM وليس BIN (انا استخدم MASM 6.1 ) ومن خصائص هذا المترجم انه عند اختيار AT\ بعد اسم ملف الاسمبلى - فان الملف الناتج يكون COM ويمكنك مراجعة ملفات التوثيق الخاصة بالمترجم نصيحة فى غير محلها وتقبل من دعوة - عدم استقبال الهجوم فى المحادثة العلمية على فكرة انا كنت بختبر عملية رفع الصور للمنتدى وهذه الصورة تمثل جزء من نظام تشغيل قمت بعمله خلال 5 سنوات -------- ومن هنا فانى ارشد الاخوة المهتمين بنظام التشغيل - بالتركيز على النواة Kernel وبالتحديد ادارة الذاكرة العشوائية ونظام الملفات الخاص بالقرض الصلب لانى قد قمت بعمل الجزء الخاص بتعدد المهام والبيئة الرسومية ومن ثم يتوفر لنا خبرات عربية فى مختلف فروع نظام التشغيل مع تحياتى محمود فايد
  5. اريد عمل مصفوفة ذات حجم متغير ماذا أفعل

    احبائى المبرمجين السلام عليكم اخى الكريم - خذ هذا الحل السريع - وارح نفسك من عناء التفكير - مع العلم ان الحل ليس مثالى - حيث ان يستهلك ذاكرة محددة وثابتة ولكنه حل عملى مع امكانيات العتاد المتوفرة - وصغر حجم الذاكرة المطلوب قم بانشاء مصفوفةArray ذات عدد كبير من العناصر - الحد الاقصى الذى تتصوره - وليكن 2048 على سبيل المثال قم بانشاء متغير Variable - يشتمل على رقم اقصى عنصر تم استخدامه من المصفوفة قم بوضع المصفوفة والمتغير معا فى Struct - ليمثل نوع بيانات جديد New Data Type وقم بكتابة الدوال الازمة للتعامل مع هذا السيناريو مميزات هذا الاسلوب 1 - المساحة المطلوبة من الذاكرة يمكن حسابها 2 - سهل التعامل مع عدد العناصر المستخدم عيوبه 1 - الحد الاقصى اذا لم يحدد بدقة تعتبر مصيبة مع تحياتى محمود فايد
  6. احبائى المبرمجين السلام عليكم اعتذر - فقد حدث لى خطا كبير - حيث انى عندما قمت بالرد على الرسالة السابقة التى تسال عن برنامج الاقلاع ظننت انها اول رسالة فى الموضوع - ولم انتبه - انها الصفحة الثانية الا الان - ولهذا اسهمت فى شرح نظرية برنامج الاقلاع بينما اساسا - بعدما قرات الصفحة الاولى - اتضح ان السؤال - للشخص الذى بدء الموضوع - اعتذر مرة اخرى بالنسبة للمثال الذى قمت انا بشرحة - لا يحتوى على اى مغالطة - وبالفعل الملف الناتج ياخذ الامتداد COM حيث انى استعملت ORG 510 مع تحياتى محمود
  7. احبائى المبرمجين السلام عليكم اخى الكريم هذه المشكلة يمكن تفاديها تماما كالتالى فى برنامج الماسنجر - جزء Client - اجعله عند بداية العمل - يستخدم الويب سيرفيس الموجودة على الويب سيرفر - ومن خلال استخدامه لها - يرسل اليها كل من اسم المستخدم - ورقم IP الخاص بالجهاز - اى ان IP يتم تحديده من قبل Client - وليس من جانب Server مع تحياتى محمود فايد
  8. احبائى المبرمجين السلام عليكم اخى الكريم - ان استخدام للملف autoexec.bat لايعنى على الاطلاق ان تقوم ببرمجة نظام تشغيل - وانما انت تستخدم ملامح نظام تشغيل موجود بالفعل. ذكرك للامر jmp جعلنى اشعر - انك تفكر فى برمجة نظم التشغيل - ولكن لذلك المتطلبات التالية 1 - دراسة الجانب العلمى المتعلق بالموضوع - ويمكن اللجوء للكتب التى تدرس فى الجامعات (كليات الهندسة) 2 - دراسة كيف يعمل العتاد (المعالج + الذاكرة + وحدات الادخال والاخراج) 3 - دراسة لغة التجميع 4 - دراسة لغة سى وسى ++ وحتى يكون فى هذه الرسالة معلومة جيدة - فانه - لاقلاع نظام التشغيل Boot - انت بحاجة الى برنامج صغير وبسيط مكتوب بلغة التجميع (الاسمبلى) – هذا البرنامج عبارة عن برنامج 512 بايت – والذى عند ترجمته نحصل على ملف بالامتداد COM وبالتاكيد سوف يتم اختبار ذلك -كتابتهما على القرص فى 1 head 0 track 0 Sector لانه من الخطا الفادح ان يتم عمل ذلك على القرص الصلب - لذلك يتم من خلال قرص مرن Floppy Disk . وحتى لانقوم باعادة التشغيل آى نقوم باختبار برنامج ال BOOT فقط يمكن استخدام برنامج Virtual PC وبرنامج الـ Boot كالتالى .386 _text SEGMENT PUBLIC USE16 assume CS:_text, DS:_text org 0h MahmoudOS: mov ax, 1301h mov bx, 0007h mov cx, 23 mov dh, 23 mov dl, 0 push cs pop es mov bp, String int 10h mov ax, 1301h mov bx, 0007h mov cx, 23 mov dh, 24 mov dl, 0 push cs pop es mov bp, Wow int 10h String = $ + 7C00h Wow = $ + 7C17h db "Starting MahmoudOS 2007" db "Wow, I Love you ! " ORG 510 DW 0AA55h _text ENDS END MahmoudOS ويتم ترجمته كالتالى ML /AT BOOTSEC.ASM والان نحن بحاجة الى آتابة برنامج الاقلاع فى المكان المحدد على القرص. ولعمل ذلك تم كتابة برنامج خاص بهذه المهمة باستخدام لفة سى وهذا البرنامج كالتالى #include <stdio.h> #include <conio.h> #include <bios.h> #include <dos.h> #include <stdlib.h> char __far diskbuf[512]; void main( int argc, char *argv[] ) { unsigned status = 0, i; struct _diskinfo_t di; struct _diskfree_t df; unsigned char __far *p, linebuf[17]; FILE *fp; int x; fp = fopen("bootsec.com","rb"); for(x = 1; x <= 512; x++ ) diskbuf[x-1] = fgetc(fp); fclose(fp); if( argc != 5 ) { printf( " SYNTAX: DISK <driveletter> <head> <track> <sector>" ); exit( 1 ); } if( (di.drive = toupper( argv[1][0] ) - 'A' ) > 1 ) { printf( "Must be floppy drive" ); exit( 1 ); } di.head = atoi( argv[2] ); di.track = atoi( argv[3] ); di.sector = atoi( argv[4] ); di.nsectors = 1; di.buffer = diskbuf; /* Get information about disk size. */ if( _dos_getdiskfree( di.drive + 1, &df ) ) exit( 1 ); /* Try reading disk three times before giving up. */ for( i = 0; i < 3; i++ ) { status = _bios_disk( _DISK_WRITE, &di ) >> 8; if( !status ) break; } /* Display one sector. */ if( status ) printf( "Error: 0x%.2x\n", status ); else { for( p = diskbuf, i = 0; p < (diskbuf + df.bytes_per_sector); p++ ) { linebuf[i++] = (*p > 32) ? *p : '.'; printf( "%.2x ", *p ); if( i == 16 ) { linebuf[i] = ''; printf( " %16s\n", linebuf ); i = 0; } } } exit( 1 ); } للترجمة CL BOOTW.C للاستخدام BOOTW A 0 0 1 للشرح المفصل - انظر كتاب اعمق اسرار البرمجة - الجزء الاول - صفحة 145 والكتاب مجانى - يمكنك الحصول عليه من خلال الموقع http://www.kutub.info مع تحياتى محمود فايد
  9. احبائى المبرمجين - سلامى لكم جميعا احيطكم علما - انه تم منذ لحظات بسيطة - اطلاق اصدار جديد من المشروع DoubleS Framework 1.0 (Stable) Rev. 5 SP12 ويمكن الحصول عليه من موقع المشروع http://www.sourceforge.net/projects/doublesvsoop ويشتمل هذا الاصدار على حل لمشكلة تعرض لها المهندس :( ماهر القط) وقام باخبارى عنها (شكرا جزيلا) وجميع التفاصيل فى ملفات المشروع مع تحياتى محمود فايد http://www.sourceforge.net/projects/doublesvsoop http://www.sourceforge.net/projects/fglib
  10. احبائى المبرمجين - السلام عليكم الاخت ZAHRAH مرسى جدا على الخبر ووفقك الله لعمل الخير دائما ان انتاج الحاسبات العملاقة - امر مكلف جدا كما نعلم جميعا - ويستلزم موارد كبيرة - ولهذا السبب منذ عام 1997 وقد بدات الابحاث العلمية فى ايجاد حلول بديلة - مثل Grid Computing والذى يمثل عصب Internet 2 (مستقبل الانترنت) حيث تقوم الفكرة على استغلال الحاسبات التى تعمل على الشبكة - بيحث تعمل جميعها فى اداء مهمة كبيرة - وحينما تدخل تلك التقنية فى نواة بناء الانترنت - فانه يمكن للمستخدمين الحصول على تلك الخدمة (طلب اداء مهمة كبيرة من الخوادم المتصلة بالشبكة) وذلك بقواعد محددة. كان من ضمن الافكار ايضا - ان هناك الكثير من مستخدمين الاجهزة التى تتصل بشبكة الانترنت - لايتعدى استخدامهم للشبكة مقارنة بامكانيات الحاسب نسبة تزيد عن 50% من القدرات التى يتستطيع الحاسب الشخصى القيام بها - فلما لا تستغل هذه القدرات ؟!! كانت هذه احد الاسئلة التى تطرحها الابحاث - ولكن كانت الاجابة واضحة (ان ذلك غير مسموح - فهو تعدى على حقوق المستخدم لشبكة الانترنت - واستخدام موارد الحاسوب الخاص به بدون اذن امر غير قانونى ) لهذا فانه فى يوم من الايام - فى المستقبل القريب - سوف يكون التفكير فقط فى الحصول على اشتراك بخدمة الانترنت التى تدعم تقنية Grid Computing بدلا من شراء حاسبات عملاقة كبيرة الحجم وتستلزم طاقات هائلة وايضا من ضمن مايشكل مستقبل الانترنت استخدام تقنية الواقع التخيلى Virtual Reality - حيث قد يطمح الكثيرورن الى الاشتراك بتلك الخدمة ايضا - والله اعلم بالمستقبل !!! مع تحياتى محمود فايد http://www.sourceforge.net/projects/doublesvsoop http://www.sourceforge.net/projects/fglib
  11. احبائى الكرام - سلامى لكم جميعا بارك الله فيك اخى الكريم - ووفقك الله لكل مايحب ويرضى ملحوظة اخيرة:- ان المشروع عبارة عن محيط تطوير Framework وليس بيئة عمل متكاملة IDE - حيث ان بيئة العمل المتكاملة IDE : مجموعة من الادوات التى تتضافر معا بحيث تتيح امكانية تطوير تطبيقات بصورة كاملة - ولاتكون هناك ضرورة قصوى لاستخدام ادوات خارجية (ولكن لا كامل الا الله - وغالبا مايخرج المطورون عن بيئة التطوير المتكاملة - للحصول على ادوات افضل) محيط التطوير Framework : هو مجموعة من المكونات (Components) المتجانسة والمتخصصة فى شىء معين - وتكون هذه المكونات قابلة لاعادة الاستخدام من قبل مستخدمين محيط التطوير (تخيل انه هيكل او مطبخ - تعيش داخله وتعمل بادوادته - بعد تحديثها - لانجاز شىء محدد) وللفرق بين المصطلحين - ابتعد الكثير من المبرمجين عن محيط تطوير الدوت نت فى بدايته - حيث كان يظن المبرمجين انه ظهر خصيصا فقط لتطبيقات الويب - ولهذا قامت الشركة المنتجة باعادة صياغة الدعاية الخاصة به - لتشير انه محيط تطوير لمختلف انواع التطبيقات (وربما يشير البعض ان ذلك تعدى على مصلح علمى - حيث ان محيط التطوير يفترض ان يكون متخصص - فنقول له - ان شركة عملاقة مثل مايكروسوفت بيدها ان تغير فى المصطلحات اذا ارادت ذلك - لانه كما يغير علم البرمجة من التكنولوجيا - فان التكنولوجيا اصبحت قادرة ان تغير فى العلم هى الاخرى) مع تحياتى محمود فايد http://www.sourceforge.net/projets/doublesvsoop http://www.sourceforge.net/projects/fglib
  12. اخوانى الاعزاء - السلام عليكم اخى الكريم - ان هذه الفكرة التى تعبر عنها - تدخل فى نطاق الحقائب المتطورة Packages - حيث انها متخصصة فى نطاق معين -كما انها طورت بغرض 1 - اسعاد وتحقيق رغبات المستخدم بسهولة وبدون الحاجة للمطور الاصلى 2 - كما انها يمكن ان تستخدم من قبل مبرمج اخر لعمل اضافات وتطويرات - بدون التدخل فى الشفيرة المصدرية او الحاجة اليها وتلك احد الافكار اللامعة فى تاريخ البرمجة بدون كود. مع تحياتى محمود فايد http://www.sourceforge.net/projects/doublesvsoop http://www.sourceforge.net/projects/fglib
  13. احبائى الكرام - سلامى لكم بداية اشكرك على المشاركة ولكن !! لا اخى الكريم ليس ذلك المقصود - لو كان الامر كذلك - لما فتحت الموضوع من الاصل حيث لا جديد - التعريف الى حضرتك اشرت اليه - هو مايعرف بمواد الاكواد Code Generator - وهى فكرة وردت منذ زمن بعيد - واذا تم عمل واجهة ذكية لمولد الاكواد فانه يكون معالج Wizard وهذا ايضا منذ زمن بعيد ولكن !! ان مشروعى عبارة عن 1 - اعادة صياغة لاسس علم البرمجة - من خلال نمط برمجة جديد بديل لبرمجة الكائنات - بحيث ان هذا النمط الجديد ياخذ فى الاعتبار سمات التطبيقات المتطورة (هياكل البيانات المعقدة - نظام ادارة الاحداث - الشبكات) وفى نفس الوقت قابل بان يدعم البرمجة بدون كود 2 - محيط تطوير يشتمل على * دعم لنمط البرمجة الجديد الذى يتسم بالتعقيد فى الاستخدام - ومن هنا يحل محيط التطوير مشكلة التعقيد * الغاء مايعرف بمحرر الاكواد Code Editor نهائيا وتقديم برنامج بديل - يسمى مصمم الاهداف Goal Designer بيحث ينظم سير التعليمات للحاسب فى تسلسل منطقى (على شكل شجرة من الخطوات) كما فى الخطط التى يضعها الانسان لحل مشاكله ويمثل مصمم الاهداف هذا العديد من الافكار الجديدة (16 فكرة ) تم ذكرها فى الكتاب العربى للمشروع * الغاء عملية كتابة الكود Writing code والاعتماد على التفاعل Interaction مع واجهة رسومية - للوصول الى كافية امكانيات لغة البرمجة (اى انك بدل من كتابة الكود - فانك تقوم بعملية شبيه بتصفح موقع على شبكة الانترنت) * صفحات التفاعل Interaction Pages والكود المولد فى الخلفية (يفترض ان لايحتاج المبرمج ان ينظر اليه فى اى حال من الاحوال - وذلك هو الاختلاف الاساسى عن مولد الاكواد العادى) يتم عملها من خلال محيط التطوير عن طريق برامج تصميم Transporter Designer و Interaction Designer اى ان الفكرة الجديدة - تتمثل فى معاير البرمجة المختلفة التى تم تقديمها من خلال نمط البرمجة الجديد - وتتمثل الفكرة الجديدة ايضا فى مصمم الاهداف الذى ازال عيوب البرمجة بدون كود (على مر التاريخ) - وتتمثل الفكرة ايضا فى المصممات الخاصة بصفحات التفاعل والاكواد المولدة فى الخلفية - حيث ان هذه المصممات يتم التحكم فيها بسهولة. وحيث ان اللغة تعتمد على واجهة رسومية - فذلك يوفر امكانية تمثيل تلك الواجهة باللغة العربية او الانجليزية - او اى لغة كانت. وحيث ان الكود المولد فى الخلفية يتم ادارته فاننا يمكننا الاستناد على اى لغة برمجة فى الخلفية وحيث ان مصمم الاهداف يقسم الخطوات الى اجزاء - فانه تلقائيا - تدعم بمعلومات باللغة الانسانية - تعزل المبرمج عن الكود تماما. ومن هنا اركز من جديد ان المشروع لتسهيل عملية البرمجة (تسهيل التعلم والاستخدام) - ولا يضيع اى من خصائص البرمجة - فباب الفكر مفتوح للمبرمج - ولكن الاختلاف فى طريقة تطبيق الفكر التى اصبحث غاية فى المتعة مع تحياتى لك محمود فايد http://www.sourceforge.net/projects/doublesvsoop http://www.sourceforge.net/projects/fglib
  14. اخوانى الاعزاء - السلام عليكم يوجد بالفعل داخل المشروع العديد من الامثلة (41 مثال ) بالاضافة الى توثيق عربى( كتابين - كل منهما فى حدود 200 صفحة ) - واخر انجليزى ( مقسم لكتيبين كل منهما فى حدود 100 صفحة) مع تحياتى محمود فايد http://www.sourceforge.net/projects/doublesvsoop http://www.sourceforge.net/projects/fglib
  15. احبائى المبرمجين - سلامى لكم جميعا مرسى جدا ربنا يخليك - وانا فرحتى ان شاء الله هتكمل - لما تلاقى ان الفكرة الجديدة مفيدة !! - وان شاء الله على تواصل - لان طالما فى قبول للفكرة - يبقى فى حماس للمعرفة - وبالتالى رأى جديد - يبقى فى فكر جديد هيضاف للمشروع - يهمنى جدا اعرفه. صحيح - الف الف مبروك على وسام المنتدى - وشهادة MVP - معلش جات متاخرة - بس انا جديد على المنتدى - وعقبال الماجستير يارب !!! مع تحياتى محمود فايد http://www.sourceforge.net/projects/doublesvsoop http://www.sourceforge.net/projects/fglib