کتاب C و Multi-threading: برنامه نویسی همزمان و موازی با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

انتخاب پلن

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

پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 62,488 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره C و Multi-threading: برنامه نویسی همزمان و موازی

موضوع کلی: برنامه نویسی

موضوع میانی: سی (C)

📋 سرفصل‌های دوره

  • 1. مقدمه ای بر برنامه نویسی همزمان در C
  • 2. مفهوم نخ (Thread) و کاربردهای آن
  • 3. ایجاد نخ ها با استفاده از POSIX Threads (pthreads)
  • 4. مدیریت نخ ها: ایجاد، پیوستن و جداسازی
  • 5. همگام سازی نخ ها: قفل ها (Mutexes)
  • 6. استفاده از قفل ها برای جلوگیری از دسترسی همزمان
  • 7. شرایط انتظار (Condition Variables)
  • 8. کاربرد شرایط انتظار در هماهنگی نخ ها
  • 9. مسائل مربوط به بن بست (Deadlock) و جلوگیری از آن
  • 10. راهکارهای مقابله با بن بست در برنامه های همزمان
  • 11. اصول برنامه نویسی موازی
  • 12. تفاوت بین همزمانی و موازی سازی
  • 13. معماری های پردازش موازی
  • 14. مفاهیم اساسی در پردازش موازی
  • 15. الگوهای طراحی برنامه نویسی موازی
  • 16. الگوی "تقسیم و حل" (Divide and Conquer)
  • 17. الگوی "تولیدکننده-مصرف کننده" (Producer-Consumer)
  • 18. الگوی "حسابدار-سرباز" (MapReduce)
  • 19. پیاده سازی الگوهای موازی با pthreads
  • 20. نخ های سبک وزن (Lightweight Threads)
  • 21. مقایسه نخ های سیستم عامل و نخ های کاربر
  • 22. مدیریت زمانبندی نخ ها
  • 23. تاثیر زمانبندی بر عملکرد برنامه های همزمان
  • 24. بهینه سازی برنامه های همزمان
  • 25. شناسایی گلوگاه ها در برنامه های همزمان
  • 26. تکنیک های کاهش رقابت بر سر منابع
  • 27. استفاده از داده های غیرقابل تغییر (Immutable Data)
  • 28. مدیریت حافظه در برنامه های همزمان
  • 29. خطرات دسترسی همزمان به حافظه مشترک
  • 30. استفاده از انواع داده های اتمی (Atomic Types)
  • 31. قفل های بهینه (Optimistic Locking)
  • 32. مقایسه قفل ها و انواع داده های اتمی
  • 33. مقدمه ای بر Multi-threading در C++
  • 34. کلاس Thread در C++
  • 35. مدیریت نخ ها در C++
  • 36. همگام سازی در C++ با Mutexes
  • 37. قفل های بازگشتی (Recursive Mutexes)
  • 38. قفل های زمانی (Timed Mutexes)
  • 39. شرایط انتظار در C++
  • 40. استفاده از Future و Promise
  • 41. کلاسpackaged_task
  • 42. استفاده از async
  • 43. مدیریت Task ها در C++
  • 44. الگوهای همزمانی در C++
  • 45. کتابخانه TBB (Threading Building Blocks)
  • 46. مقدمه ای بر TBB
  • 47. استفاده از parallel_for در TBB
  • 48. استفاده از parallel_reduce در TBB
  • 49. استفاده از parallel_invoke در TBB
  • 50. کلاس های TBB برای مدیریت Task ها
  • 51. کاربرد TBB در حل مسائل علمی
  • 52. بهینه سازی با TBB
  • 53. مقدمه ای بر OpenMP
  • 54. دستورالعمل های OpenMP
  • 55. استفاده از OpenMP برای موازی سازی حلقه ها
  • 56. دستورالعمل parallel for
  • 57. دستورالعمل parallel sections
  • 58. دستورالعمل single
  • 59. دستورالعمل critical
  • 60. دستورالعمل atomic
  • 61. مدیریت متغیرهای خصوصی و مشترک در OpenMP
  • 62. اعلام وابستگی های داده ای (Data Dependencies)
  • 63. نکات امنیتی در برنامه نویسی همزمان
  • 64. حفاظت از داده ها در برابر دسترسی همزمان
  • 65. تست و اشکال زدایی برنامه های همزمان
  • 66. ابزارهای اشکال زدایی برای برنامه های همزمان
  • 67. استراتژی های تست برنامه های همزمان
  • 68. تست تنش (Stress Testing)
  • 69. تست پخش (Fuzz Testing)
  • 70. کاربرد برنامه نویسی همزمان در سیستم های عامل
  • 71. مدیریت فرآیندها و نخ ها در سیستم عامل
  • 72. همگام سازی در سطح سیستم عامل
  • 73. کاربرد برنامه نویسی همزمان در شبکه
  • 74. طراحی سرورهای چند نخی
  • 75. مدیریت اتصالات همزمان
  • 76. کاربرد برنامه نویسی همزمان در محاسبات علمی
  • 77. شبیه سازی های موازی
  • 78. تحلیل داده های حجیم
  • 79. کاربرد برنامه نویسی همزمان در گرافیک کامپیوتری
  • 80. رندرینگ موازی
  • 81. پردازش تصویر همزمان
  • 82. ملاحظات عملکردی در برنامه نویسی همزمان
  • 83. مقیاس پذیری (Scalability)
  • 84. کارایی (Efficiency)
  • 85. مصرف انرژی
  • 86. مقدمه ای بر CUDA (در صورت انطباق با چارچوب)
  • 87. مفاهیم پایه GPU Computing
  • 88. برنامه نویسی موازی با CUDA
  • 89. مدیریت حافظه در CUDA
  • 90. بهینه سازی برنامه های CUDA
  • 91. موضوعات پیشرفته در برنامه نویسی همزمان
  • 92. قفل های بدون قفل (Lock-free Programming)
  • 93. ساختارهای داده همزمان
  • 94. برنامه نویسی واکنشی (Reactive Programming)
  • 95. معماری های نرم افزاری برای سیستم های همزمان
  • 96. معماری میکروسرویس و همزمانی
  • 97. تکنیک های عیب یابی پیشرفته
  • 98. بررسی الگوهای رایج خطا در برنامه های همزمان
  • 99. نکات پایانی و جمع بندی مباحث
تگ‌ها: برنامه نویسی C برنامه نویسی موازی برنامه نویسی همزمان بهینه سازی برنامه نویسی پیاده سازی Multi-threading قفل (Lock) در C مباحث پیشرفته C مدیریت Thread در C مفاهیم Multi-threading همگام سازی Thread

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.