پروژه پیاده سازی الگوریتم موازی با استفاده از کارتهای گرافیکی چند هسته ای

پروژه پیاده سازی الگوریتم موازی با استفاده از کارتهای گرافیکی چند هسته ای پژوهش کامل در حوزه کامپیوتر و IT میباشد و در 7 فصل تنظیم شده است.این پروژه با معرفی واحد پردازش گرافیکی (GPU) به پیاده سازی الگوریتم موازی پرداخته است. شما میتوانید فهرست مطالب پروژه را در ادامه مشاهده نمایید.

پروژه بصورت فایل قابل ویرایش ورد(WORD) در 124 صفحه برای رشته کامپیوتر و IT در پایین همین صفحه قابل دانلود میباشد. شایسته یادآوری است که پروژه از ابتدا تا پایان ویرایش وتنظیم , سکشن بندی (section) ، نوشتن پاورقی (Footnote) و فهرست گذاری اتوماتیک کامل شده وآماده تحویل یا کپی برداری از مطالب مفید آن است.

چکیده

در سال های اخیر، افزایش روز افزون عملکرد کارت های گرافیکی، محققین را به فکر بهره گیری از توان پردازشی آنها در کاربردهای غیر گرافیکی انداخته است. درهمین راستا شاخه جدیدی در علوم کامپیوتر به نام محاسبات با اهداف همه منظوره روی واحد GPU ایجاد شده است ، هدف فعالان این عرصه بهره گیری از کارت گرافیک به عنوان یک کمک پردازنده محاسباتی در برنامه های غیرگرافیکی و برنامه های عمومی است.ازاین رو از صنعت محاسباتی گرفته تا محاسبات موازی دچار تغییرات گسترده ای شده وعملیات انتقال تقریبا تمام کامپیوترهای مصرف کننده سال 2010 همراه با پردازنده های چند هسته ای صورت گرفته است صنعت رایانه ای در سراشیبى تند انقلاب محاسباتی موازی قرار دارد ،نتیجه اینکه در پی آن، تقریبا هر برنامه نویس مشتاق در آن نیاز به آموزش برنامه نویسی موازی دارد تا بتواند در علوم کامپیوتری به طور کامل موثر واقع شود. و در نتیجه CUDA C NVIDIA تا کنون به عنوان یکی از موفق ترین زبانهای عمل کرده است که تا به حال برای محاسبات موازی طراحی شده است. در این پایان نامه، ضمن بیان مقدمه ای از CUDA، تعدادی از دستورات زبان NVIDIA CUDA C معرفی خواهد شد.

واژه های کلیدی:کارت های گرافیکی،NVIDIA CUDA C، برنامه نویسی موازی،GPU، کودا

فهرست مطالب

فصل اول  مقدمه

1-1- واحد پردازش گرافیکی.. 2

1-2- مقایسه توانایی هایGPU باCPU.. 3

1-3- مقایسه سخت افزار GPU با CPU.. 6

1-4- فناوری های ATI و NVIDIA.. 7

فصل دوم  محاسباتGPU

2-1- تکامل محاسبات GPU.. 14

2-2- توسعه فن اوری GPU.. 14

2-3-GPU های اولیه. 15

2-4- محاسبات یکپارچه و GPU ها16

2-5- سیتم های محاسبات GPU.. 17

2-6- اکوسیستم محاسبات GPU.. 17

فصل سوم  محاسبات multi-GPU

3-1- معماری محاسباتی تسلا.. 20

3-2- چند پردازندههای جریانی.. 20

3-3- حافظه های GPU.. 20

3-4- نمونه SIMT. 22

3-5- معماری مقیاس پذیر کودا22

3-5-1- معماری دستگاه کودا22

3-5-2- تردها، بلاک ها و گریدها: تطبیق الگوریتم ها با مدل کودا23

3-5-3- کاربردهای کودا26

3-5-4- معماری مجموعه دستور و اجرا نخ های موازی.. 33

3-5-5- معماری حافظه کودا35

3-5-6- قابلیت محاسباتی.. 36

3-5-7- مدل برنامه نویسی کودا37

3-5-8- یک مدل برنامه نویسی ناهمگن.. 38

3-5-9- پشته نرم افزاری کودا41

3-5-10- سازمان نخ ها41

3-5-11- CUDA C.. 43

3-5-12- کامپایل یک برنامه کودا46

3-5-13- اشکال زدایی یک برنامه کودا46

3-5-14- افزایش کارایی.. 47

3-6- نگاشت به معماری تسلا.. 48

3-7- پشتیبانی ممیز شناور. 48

3-8- سیستم های محاسباتی NVIDIA Tesla S1070. 49

3-9- معماری محاسبه فرمی.. 50

3-9-1- سلسله مراتب حافظه کش.... 51

3-9-2- حافظه ECC.. 52

3-9-3- چند پردازندههای جریانی.. 52

3-10- برنامه نویسی multi-GPU.. 53

فصل چهارم  پیاده سازی پروژه

4ـ1ـ اهداف فصل.. 55

4ـ2ـمحیط توسعه. 55

4ـ2ـ1ـ پردازنده های گرافیکی فعال شده CUDA.. 55

4ـ2ـ2ـ دستگاه درایور NVIDIA.. 57

4ـ2ـ3ـ کیت ابزار توسعه CUDA.. 57

فصل پنجم  آشنایی با CUDA C

5ـ1ـ اهداف فصل.. 62

5ـ2ـ اولین برنامه. 62

5-2-1-HELLO, WORLD.. 63

5ـ2ـ2ـ فرمان هسته ای.. 63

5ـ3ـ اولین برنامه دستگاه های جستجوگر. 68

5ـ4ـ خواص کاربردی دستگاه. 71

فصل ششم  برنامه نویسی موازی درCUDA C

6ـ1ـ اهداف این فصل.. 75

6ـ2ـ برنامه نویسی CUDA موازی.. 75

فصل هفتم  تعاون رشته ای

7ـ1ـ اهداف فصل.. 81

7ـ2ـ تقسیم بلوکهای موازی.. 81

7ـ2ـ1 مجموع برداری: ردوکس.... 82

7ـ2ـ2 موج دار کردنGPU با استفاده از رشته ها88

7ـ3 حافظه اشتراکی و همزمانسازی.. 94

7ـ3ـ1 ضرب نقطه ای.. 95

7ـ3ـ2 بیت مپ حافظه مشترک... 106

نتیجه گیری.. 110

فهرست منابع.. 112

فهرست شکل ها

شکل 1- 1 - مقایسه توان پردازشی خام پردازنده‌گرافیکی با پردازنده‌مرکزی.. 3

شکل1-2- مقایسه پهنای باند GPUو CPU.. 4

شکل 1- 3- نمودار مقایسه سرعت GPUها و CPUها در بدست اوردن پسورد فایل های RAR.. 6

شکل 1- 4- مقایسه سخت افزار GPUو CPU.. 7

شکل 1- 5- مدل تخصیص ترانزیستور برای GPUو CPU.. 7

جدول2-1- نقطه عطف توسعه تکنولوژی GPUها NVIDIA.. 14

شکل3- 1- معماری دستگاه کودا23

شکل3-2- گریدها، بلاک ها و تردها26

شکل3-3 - کامپایل JITو هدف گیری دستگاه یک برنامه کاربردی کودا34

شکل3- 4- مثالی از توزیع بلاک ها روی GPUهای با اندازه متفاوت.. 35

شکل3- 5- فضاهای حافظه دستگاه کودا و مکان فیزکی انها روی دستگاه. 35

شکل3- 6- سلسله مراتب حافظه کودا در ارتباط با تردهای کرنل.. 36

شکل3- 7- پایپلاین گرافیکی.. 38

شکل3- 8- مثال اجرا ناهمگن.. 39

شکل3- 9- جریان کنترل پایه ای کودا40

شکل3- 10- پشته نرم افزاری کودا41

شکل3- 11- مدل اجرایی یک برنامه کودا با سازمان نخ.. 43

شکل3- 12- معماری سیستم محاسباتی NVIDIA Tesla S1070. 49

شکل3- 13- پیکربندی کامل محاسباتی S1070. 50

شکل3- 14- معماری محاسبات GPUبا 512 هسته پردازنده کودا51

شکل3- 15- چند پردازندهای جریانی فرمی.. 53

شکل 3- 16- دو شیوه ممکن برای برنامه ای کردن GPUها (a) ترتیبی (b) چند نخی.. 54

شکل4ـ1 پردازنده های گرافیکی فعال شده با CUDA.. 56

شکل 4ـ2صفحه دانلود CUDA.. 58

جدول5-1 خواص دستگاه با CUDA.. 69

شکل6ـ1: جمع دوبردار. 76

شکل 7ـ1 ترتیب دو بعدی مجموعه ای از بلوک ها و رشته ها و رشته های صفر.85

شکل 7ـ2 یک سلسله مراتب دو بعدی ازبلوک ها و رشته های مورد استفاده در پردازش یک تصویر48 * 32 پیکسلی با استفاده از یک رشته در هر پیکسل.. 91

شکل 7ـ3 ثصویری از یک مثال موجGPU.. 94

شکل 7ـ4 یک مرحله از کاهش جمع.. 99

شکل 7ـ5 تصویر بعد از اضافه کردن همزمانسازی مناسب.109


خرید و دانلود پروژه پیاده سازی الگوریتم موازی با استفاده از کارتهای گرافیکی چند هسته ای

پروژه سخت افزار تکاملی با الگوریتم ژنتیک

پروژه سخت افزار تکاملی با الگوریتم ژنتیک پژوهش کامل در حوزه کامپیوتر و فناوری اطلاعات میباشد و در 5 فصل تنظیم شده است.این پروژه با معرفی الگوریتم ژنتیک و سخت افزار تکاملی به بررسی آنها پرداخته است.شما میتوانید فهرست مطالب پروژه را در ادامه مشاهده نمایید.

پروژه بصورت فایل قابل ویرایش ورد(WORD) در 68 صفحه برای رشته کامپیوتر و IT در پایین همین صفحه قابل دانلود میباشد. شایسته یادآوری است که پروژه از ابتدا تا پایان ویرایش وتنظیم , سکشن بندی (section) ، نوشتن پاورقی (Footnote) و فهرست گذاری اتوماتیک کامل شده وآماده تحویل یا کپی برداری از مطالب مفید آن است.

چکیده

سخت افزار تکاملی، سخت افزاری است که بتواند ساختار خود را اصلاح کند. این تفکر با پیدایش تکنولوژی FPGAدر بین محققان شروع به رشد کرد. با توجه به اهمیت مدار های ترتیبی همگام در طراحی مدار های منطقی، در این پروژه با یک رهیافت تکاملی سعی در بهینه سازی این گونه مدار ها داریم. درگام اول بهینه سازی، با توجه به اینکه مسئلۀ تخصیص حالت که ذاتاً به این گونه مدار ها مربوط می شود، مسئله ای NP کامل است، سعی داریم با رهیافت الگوریتم ژنتیک تخصیص حالت بهینه مدار را بیابیم. خواهیم دید که یک تخصیص حالت بهینه به طور قابل توجهی در کاهش پیچیدگی بخش ترکیبی مدار ترتیبی تأثیرگذار می باشد. در گام دوم بهینه سازی سعی داریم با رهیافت برنامه نویسی ژنتیکی بخش ترکیبی مدار را از نظر تعداد گیت های معادل و میزان تأخیر انتشار در مدار کاهش می دهیم

شرح مختصری از مطالبی که در فصل های اینده به ان می پردازیم، در ذیل اورده شده است :

فصل اول، مطالبی در بارۀ اصول الگوریتم ژنتیک بیان شده است.

فصل دوم، مسئلۀ تخصیص حالت را بررسی می کنیم و نشان می دهیم که یک تخصیص حالت بهینه به طور قابل ملاحظه ای در کاهش پیچیدگی اجزای بخش ترکیبی مدار تأثیر گذار است. و در اخر، الگوریتم ژنتیک به کار رفته را به طور مختصر بیان می کنیم.

فصل سوم، مطالبی در بارۀ اصول برنامه نویسی ژنتیکی پایه بیان شده است.

فصل چهارم، مفاهیمی چون ماکزیمم تأخیر انتشار و تعداد گیت های معادل در یک مدار را توضیح داده و کارهای انجام شده در جهت حداقل سازی این پارامتر ها را بیان می کنیم. و در اخر رهیافت تکاملی ارائه شده برمبنای برنامه نویسی ژنتیکی را شرح می دهیم.

فصل پنجم، نتایج حاصل از اجرای پروژه و مقایسه با روش مرسوم.

واژه های کلیدی:سخت افزار تکاملی، مدار ترتیبی، الگوریتم ژنتیک، برنامه نویسی ژنتیکی، تخصیص حالت.

فهرست مطالب

مقدمه. 1

فصل اول  مقدمه ای بر الگوریتم ژنتیک

1- 1- الگوریتم ژنتیک چیست... 4

1-2- فلسفۀ انتخاب اصلح در طبیعت... 4

1-3- مفاهیم پایه ای الگوریتم ژنتیک... 5

1-3-1- تابع ارزیابی.. 6

1-3-2- نحوۀ کد کردن متغیر های تابع.. 6

1-3-3- ایجاد جمعیت اولیه. 7

1-3-4- ارزیابی کروموزوم ها7

1-3-5- انتخاب والد برای ایجاد نسل بعد. 8

1-3-6- تولید نسل جدید. 11

1-3-7- پایان دادن به اجرا13

فصل دوم  مدار های ترتیبی همگام و مسئلۀ تخصیص حالت

2-1- مدار های ترتیبی همزمان 15

2-1-1-مدل های میلی و مور. 16

2-1-2- فرایند طراحی مدار های ترتیبی.. 16

2-1-3- تخصیص حالت... 17

2-1-4- شناسایی یک تخصیص حالت خوب.. 21

2-2- کاربرد سخت افزار تکاملی در مساله تخصیص حالت... 21

2-3- الگوریتم ژنتیک در تخصیص حالت... 22

2-3-1- تعریف کروموزوم ها22

2-3-2- ایجاد جمعیت اولیه. 24

2-3-3- ارزیابی هزینۀ یک نمونۀ تخصیص حالت... 24

2-3-4- انتخاب تخصیص حالت های مناسب... 27

2-3-5- انجام عمل ادغام روی جمعیت... 27

2-3-6- انجام عمل جهش روی جمعیت... 28

2-3-7- شرایط خاتمۀ الگوریتم.. 28

فصل سوم  برنا مه نویسی ژنتیکی

3-1- برنامه نویسی ژنتیکی چیست... 29

3-1-1- کروموزوم ها در برنامه نویسی ژنتیکی.. 29

3-1-2- ایجاد جمعیت اولیه. 30

3-1-3- انتخاب کروموزوم برای ایجاد نسل جدید. 30

3-1-4- تولید نسل جدید. 30

3-2-گام های مقدماتی در اجرای برنامه نویسی ژنتیکی.. 33

3-2-1- گام اول : مجموعۀ پایانه ها33

3-2-2-گام دوم : مجموعه توابع.. 34

3-2-3- گام سوم : تابع سودمندی.. 34

3-2-4- گام چهارم : پارامتر های برنامه نویسی ژنتیکی.. 35

3-2-5-گام پنجم : شرایط خاتمه و خروجی برنامه. 35

3-3- یک نمونه اجرای برنامه نویسی ژنتیک... 35

3-3-1-گام های مقدماتی.. 36

3-3-2- گام به گام اجرای برنامه. 37

3-3-2-1- ایجاد جمعیت اولیه. 37

3-3-2-2- ارزیابی سودمندی.. 38

3-3-2-3- انتخاب، ادغام و جهش.... 39

3-3-2-4- شرایط خاتمه و خروجی برنامه. 40

فصل چهارم  بهینه سازی یک مدار ترکیبی

4-1- موارد موثر در کارایی مدار. 41

4-1-1- تعداد گیت های به کار رفته در مدار. 41

4-1-2- تأخیر انتشار یک گیت... 42

4-2- سخت افزار تکاملی در بهینه سازی بخش ترکیبی مدار. 42

4-3- برنامه نویسی ژنتیکی در بهینه سازی مدار های ترکیبی.. 44

4-3-1ساختار کروموزوم ها45

4-3-2- مقایسۀ ساختار ماتریسی و ساختار درختی در برنامه نویسی ژنتیکی.. 47

4-3-3- جمعیت اولیه. 47

4-3-4- ارزیابی سودمندی مدار. 47

4-3-5- انتخاب و ایجاد جمعیت جدید. 49

4-3-6- باز تولید مدار. 49

فصل پنجم  نتایج و مقایسۀ انها

1-1- مقایسۀ یک نمونه مدار پس از دو مرحله بهینه سازی.. 53

فهرست شکل ها

شکل 1-1: مقایسه ای بین الگوریتم ژنتیک و تکامل زیستی.. 4

شکل 1-2: نمودار گردشی الگوریتم ژنتیک... 6

جدول 1-1- نمونه ای از یک جمعیت تصادفی.. 8

جدول 1-2- کروموزوم های انتخابی.. 9

جدول 1-3- احتمال تجمعی کروموزوم ها10

جدول 1-4- احتمال اننتخاب هر کروموزوم بر مبنای هزیۀ ان.. 11

شکل 1-3-ادغام تک نقطه ای.. 12

شکل 1-4- ادغام دو نقطه ای.. 12

شکل 1-5- ادغام یکنواخت... 12

شکل 1-6 –یک نمومه عمل اغدام. 12

شکل 2-1-ساختار کلی مدل مدارهای ترتیبی.. 15

شکل 2-2- فرایند طلراحی مدارهای ترتیبی.. 16

شکل2-3- نمودار ماشین حالت... 18

جدول 2-1-جدول حالت مربوط به ماشین حالت... 18

شکل2-4- ساده سازی در سطح گیت با روش نقشه کارنو. 19

شکل2-5- مدار ترکیبی.. 19

جدول 2-2- جدول درستی ماشین حات با تخصیص حالت جدید. 20

شکل 2-6-ساده سازی در سطح گیت با روش نقشه کارنو برای تخصیص حالت جدید. 20

شکل 2-7- مدار حاصل از تخصیص حالت جدید. 21

شکل 2-8- یک نمونه کروموزوم برای تخصیص حالت3-2. 22

شکل 2-9- ماتریسAM... 26

شکل 3-1- ساختار درختیGPدر نمایش عبارت max(x+x,x+3*y)29

شکل 3-2- کروموزوم های والد. 30

شکل3-3- کروموزوم های والد مشابه. 31

شکل 3-4 –فرزندان متفاوت از والد های کاملاً مشابه. 32

شکل 3-5- مدل های جهش.... 32

جدول3-1- مجموعه پایانه. 34

جدول3-2- مجموعه توابع.. 34

شکل 3-6- جمعیت اولیه. 38

شکل 3-7 –مقایسۀ نمودار های مربوط به عبارت های حاصل از نسل اول با نمودار مربوط به عبارت هدف 38

شکل 3-8- جمعیت مسل جدید. 39

شکل4-1- نمونه ای از معدل سازی گیت ها41

شکل4-2- ساختار فنوتیپ ارائه شده توسط لوییس.... 43

شکل 4-3-ژنوتیپی بر مبنای فنوتیپ ارائه شده توسط لوییس.... 43

شکل4-4- نمونه ای از مدار ترکیبی با فنو تیپ لوییس.... 44

جدول 4-5- تعداد گیت های معدل و تأخیر در یک نمونه گیت... 45

شکل4-6- ساختار ژن در این نوع کروموزوم ها45

شکل 4-7- مدار مربوط به کروموزوم بالا. 46

شکل 4-8- یک نمو نه مدار کد شده (کروموزوم)46

شکل 4-9- ادغام چهار نقطهای.. 50

شکل 5-1- مدار (1) با یک تخصیص حالت نامناسب... 53

شکل 5-2- مدار (1) با تخصیص حالت بهینه. 53

شکل 5-3- مدار(1)پس از بهینه سازی بخش ترکیبی.. 54

شکل5-4- نمودار بهترین سودمندی مدارها در نسل های مختلف... 54

 


خرید و دانلود پروژه سخت افزار تکاملی با الگوریتم ژنتیک

کتاب آموزش جامع C#.net 2005

این کتاب پیادهسازی مایکروسافت را تشریح می کند. فرض بر آن است که میتوانیم از کدهای قبلی نوشته شده نیز استفاده
به سیستم عامل د یگری منتقل نخواهد شد و محیط مجازی گفته شده نیز شفاف NET. کنیم و کدهای پیادهسازی شده توسط
است.

 

 

راهنمایی بسار خوب برای دانشجویان و علاقه مندان به برنامه نویسی


خرید و دانلود کتاب آموزش جامع C#.net  2005

دانلود پروژه ماشین سکه خرد کن با ++C‎ با تحلیل خط به خط

نوع فایل: pdf . cpp  قالب کد:txt

در این پروژه که با زبان سی پلاس پلاس نوشته شده است، الگوریتم ماشین سکه خرد کن پیاده سازی شده و فایل تحلیل کل در کنار آن قرار داده شده.

فهرست :

۱- برای اجرای دستورات cout و cin دستورات ورودی خروجی سیستم این فایل را باید ضمیمه برنامه کرد.

۲- برای اجرای تابع های پاک کردن صفحه نمایش clrscr() و تابع getch() نیاز است این را به برنامه ضمیمه کنیم.

۳- تابع مرتب سازی که ورودی آن p[] ارزش اسکناس ها،n تعداد نوع سکه ها، r[] تعداد اسکناس ها.

۵- متغیر های i و j برای for ، متغیر m‌برای کمک در جابه جایی ارزش اسناس ها،

۶- این for از ابتدا تا انتهای آرایه را پیمایش می کند

۸- مقدار ارزش اسکناس p[j] را در متغیر m می ریزد.

۹- این for که در for قبلی قرار دارد از یکی بعد از اندیس for قبلی شروع می کند و تا آخر آرایه را پیمایش می کند.

۱۱- اگر m که مقدار ارزش اسکناس را در خود دارد با مقدار اسکناس بعدی مقایسه می کند اگر m کوچکتر باشد.

۱۳- مقدار ارزش فعلی p[i] را در m می ریزد.

۱۴- شماره اندیس را د رمتغیر s می ریزد.

۱۵و ۱۶- جابه جایی ارزش بزرگتر به جای ارزش کوچکتر

۱۷تا ۱۹- جابه جایی تعداد اسکناس هایی که ارزش آنها جابه جا شده اند.

۲۳- این for از ابتدا تا انتهای آرایه را پیمایش می کند

۲۴- چاپ ارزش ها و تعداد ارزش ها جلوی آنها

۲۶- تابع خرد کردن سکه ها با ورودی های p[]ارزش اسکناس ها،r[] برای تعداد ارزش ها،s[]‌نتیجه در آن قرار دارد،n تعداد نوع اسکناس ها، m ارزشی که می خواهیم خرد شود.

۲۸- متغیر i وl برای forها و k برای اینکه تعداد اسکناس در آن ذخیره شود.

۲۹- این for از ابتدا تا انتهای آرایه را پیمایش می کند

 

 

 

 

نرم افزار تبلیغات در تلگرام 100٪ تست شده +اموزش کامل

 

۳۱ تا ۳۴- اگر مبلغ ورودی از اسکناس های موجود کمتر باشد قابل خرد شدن نیست و چاپ پیغام مبلغ کوچک است


خرید و دانلود دانلود پروژه ماشین سکه خرد کن با ++C‎ با تحلیل خط به خط

پایان نامه طراحی و پیاده سازی سیستم اشتراک فایل تحت اندروید و ویندوز

مشخصات مقاله:

دسته : مهندسی فناوری اطلاعات, مهندسی کامپیوتر

عنوان پایان نامه : طراحی و پیاده سازی سیستم اشتراک فایل تحت اندروید و ویندوز

قالب بندی : pdf

قیمت: 2800 تومان

شرح مختصر: در دهه ی گذشته، برنامه نویسی تحت شبکه دیگر در قلمرو تعداد محدودی از متخصصان نبوده و تبدیل به بخش اصلی جعبه ابزار هر برنامه نویس شده است. امروزه تعداد نرم افزار های تحــت شبکه، از تعـداد برنامه های دیگر بیشتر است! گذشته از برنامه های کلاسیک مثل مرورگرها و ایمیل ها، بیشتر برنامه های کاربردی، سطحی از شبکه گرایی را در خود دارند. برای مثال، ضد ویروس ها برای دریافت اطلاعات ویروس های جدید به سایت خود متصل می شوند، پخش کننده های موزیک، بخشی از فایل صوتی را آپلود می کنند و از پایگاه داده ی خود، اطلاعات مربوط به آن آهنگ را دانلود می کنند و … اکنون، ظهور وب سرویس ها بیش از پیش شبکه را در آغوش تمامی انواع نرم افزار ها قرار داده. وقوع همه ی این رویدادها در اینترنت است و تمامی آن می تواند در جاوا نوشته شود! شبکه به یک برنامه ی ساده، قدرتی دو چندان می دهد. با شبکه، یک برنامه می تواند اطلاعات را از میلیون ها کامپیوتر که در جای جای کره ی خاکی پراکنده اند، دریافت کند. یک برنامه می تواند با ده ها میلیون انسان ارتباط برقرار کند. یک برنامه می تواند قدرت تعدادی زیادی کامپیوتر را برای حل یک مسئله به کار گیرد. و این تازه شروع است! … در ابتدا به بررسی فواید برنامه نویسی تحت شبکه و فواید جاوا و اندروید می پردازیم. سپس وارد فرایند طراحی سیستم اشتراک فایل با رویکرد RUP و با استفاده از UML خواهیم شد. خروجی این پروژه، نمودار های UML و دو برنامه ی کاربردی (یکی برای ویندوز و یکی برای اندروید) خواهد بود (به همراه سورس کد).

فهرست:

چکیده

پیش گفتار

فصل اول بررسی منابع علمی

بررسی فواید برنامه نویسی تحت شبکه با جاوا

تاریخچه ی جاوا

درباره ی اندروید

کمی در باره ی UML و RUP

فصل دوم روش انجام پروژه

دیسیپلین مدلسازی سازمان

دیسیپلین مدیریت نیازمندی ها

دیسیپلین تحلیل و طراحی

دیسیپلین پیاده سازی

دیسیپلین استقرار

نتیجه گیری

منابع

پیوست سورس کد

فهرست شکلها

نرم افزار چت Cisco Jabber

نرم افزار Azureus Vuze

نمودار مورد کاربرد سیستم اشتراک فایل

صفحه ی نخست نرم افزار کاربر

صفحه ی انتخاب دریافت یا ارسال فایل

صفحه ی انتخاب فایل برای دریافت

صفحه ی انتخاب فایل برای ارسال

نرم افزار طرف مدیر سیستم

پنجره ی ثبت کاربر جدید

صفحه ی لیست پوشه های اشتراکی

پنجره ی انتخاب پوشه ی جدید برای اشتراک

نمودار فعالیت متناظر با مورد کاربرد “اهراز هویت”

نمودار فعالیت متناظر با مورد کاربرد “دریافت فایل”

نمودار فعالیت متناظر با مورد کاربرد “ارسال فایل”

نمودار فعالیت شروع (طرف سرور)

نمودار فعالیت متناظر با چند مورد کاربرد مربوط به اشتراک پوشه

نمودار فعالیت متناظر با مورد کاربرد “نمایش لیست کاربران”

نمودار فعالیت متناظر با مورد کاربرد “ثبت کاربر”

نمودار کلاس سیستم اشتراک فایل

سناریوی اهراز هویت

نمودار توالی اهراز هویت


خرید و دانلود پایان نامه طراحی و پیاده سازی سیستم اشتراک فایل تحت اندروید و ویندوز