کتاب طراحی نرمافزارهای سیستمی: بازخوانی اصول بنیادین از عصر مینیکامپیوترها با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
طراحی نرمافزارهای سیستمی: اصول بنیادین از عصر مینیکامپیوترها طراحی نرمافزارهای سیستمی: بازخوانی اصول بنیادین از عصر مینیکامپیوترها دوره آموزشی جامع برای درک عمیق مهندسی نرمافزار و سیستمهای عامل ...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره طراحی نرمافزارهای سیستمی: بازخوانی اصول بنیادین از عصر مینیکامپیوترها
موضوع کلی: مهندسی نرمافزار
موضوع میانی: سیستمهای عامل و نرمافزارهای سیستمی
📋 سرفصلهای دوره
- 1. مقدمه ای بر نرم افزارهای سیستمی و تاریخچه آن
- 2. معماری مینی کامپیوترها: یک نگاه اجمالی
- 3. مبانی سخت افزار: ثبات ها، حافظه و پردازنده
- 4. زبان اسمبلی و برنامه نویسی سطح پایین
- 5. مفاهیم سیستم عامل: هسته، پوسته و برنامه ها
- 6. مدیریت حافظه: تخصیص، آزادسازی و آدرس دهی
- 7. مقطع های حافظه (Memory Segments) و Page Table ها
- 8. برنامه نویسی وقفه ها (Interrupts)
- 9. درایورهای دستگاه (Device Drivers): اصول و طراحی
- 10. مدیریت ورودی/خروجی (I/O Management)
- 11. فایل سیستم ها: ساختار، سازماندهی و دسترسی
- 12. زمانبندی پردازنده (CPU Scheduling): الگوریتم ها و معیارها
- 13. مدیریت فرآیندها: ایجاد، حذف و ارتباط بین فرآیندها
- 14. همگام سازی فرآیندها: سمافورها، mutex ها و مانیتورها
- 15. بن بست (Deadlock): شرایط، تشخیص و جلوگیری
- 16. پیاده سازی یک هسته ساده: گام به گام
- 17. برنامه نویسی سیستم: فراخوانی های سیستمی (System Calls)
- 18. کامپایلرها: مقدمه ای بر طراحی و پیاده سازی
- 19. اسمبلرها: ساختار و عملکرد
- 20. لینکرها و لودرها: پیوند و بارگذاری برنامه ها
- 21. دیباگرها (Debuggers): اصول و تکنیک ها
- 22. مدیریت حافظه مجازی (Virtual Memory Management)
- 23. مفهوم Page Fault و مدیریت خطاها
- 24. حافظه پنهان (Cache Memory): اصول و عملکرد
- 25. مقدمه ای بر شبکه های کامپیوتری
- 26. پروتکل های ارتباطی: TCP/IP و OSI
- 27. برنامه نویسی شبکه: سوکت ها (Sockets)
- 28. امنیت سیستم عامل: تهدیدات و راهکارها
- 29. مدیریت کاربران و گروه ها
- 30. کنترل دسترسی: مجوزها و سطوح دسترسی
- 31. رمزنگاری: اصول و الگوریتم ها
- 32. مقدمه ای بر پایگاه داده ها
- 33. مدل های داده: رابطه ای، شبکه ای و سلسله مراتبی
- 34. زبان پرس و جو (SQL): اصول و کاربرد
- 35. بهینه سازی پایگاه داده: شاخص ها و query optimization
- 36. مفهوم تراکنش (Transaction) و ACID properties
- 37. پشتیبان گیری و بازیابی پایگاه داده
- 38. مدیریت سیستم فایل: ساختار و عملکرد
- 39. فرمت های مختلف فایل سیستم
- 40. بررسی فایل سیستم های FAT و NTFS
- 41. مجازی سازی سیستم عامل: مفاهیم و تکنیک ها
- 42. ماشین های مجازی (Virtual Machines): VMware و VirtualBox
- 43. کانتینرها (Containers): Docker و Kubernetes
- 44. پردازش ابری (Cloud Computing): مفاهیم و مدل ها
- 45. معماری کلاینت-سرور: اصول و طراحی
- 46. برنامه نویسی سمت سرور: PHP، Python و Node.js
- 47. وب سرورها: Apache و Nginx
- 48. امنیت برنامه های کاربردی وب
- 49. برنامه نویسی موازی: مفاهیم و تکنیک ها
- 50. Threads و Processes: مقایسه و کاربرد
- 51. مدیریت ریسمان ها (Thread Management)
- 52. همگام سازی ریسمان ها: قفل ها و متغیرهای شرطی
- 53. برنامه نویسی توزیع شده: مفاهیم و چالش ها
- 54. مخابره پیام (Message Passing): MPI و RabbitMQ
- 55. روش های برقراری ارتباط بین برنامه های توزیع شده
- 56. سیستم عامل های بیدرنگ (Real-time Operating Systems)
- 57. زمانبندی وظایف بیدرنگ
- 58. معماری های سیستم های بیدرنگ
- 59. مقدمه ای بر هوش مصنوعی و یادگیری ماشین
- 60. الگوریتم های یادگیری ماشین: رگرسیون، طبقه بندی و خوشه بندی
- 61. شبکه های عصبی: اصول و کاربرد
- 62. پردازش زبان طبیعی (Natural Language Processing)
- 63. بینایی ماشین (Computer Vision)
- 64. مقدمه ای بر سیستم های تعبیه شده
- 65. معماری میکروکنترلرها
- 66. برنامه نویسی سیستم های تعبیه شده
- 67. ارتباطات سریال: UART، SPI و I2C
- 68. اینترنت اشیا (IoT): مفاهیم و معماری
- 69. امنیت اینترنت اشیا
- 70. تست و اشکال زدایی نرم افزارهای سیستمی
- 71. روش های مختلف تست نرم افزار
- 72. ابزارهای تست و اشکال زدایی
- 73. مستندسازی نرم افزارهای سیستمی
- 74. استانداردهای مستندسازی
- 75. مدیریت پیکربندی نرم افزار
- 76. Git و GitHub: کنترل نسخه و همکاری
- 77. مدیریت پروژه های نرم افزاری
- 78. چرخه عمر توسعه نرم افزار
- 79. متدولوژی های چابک (Agile): Scrum و Kanban
- 80. تکنیک های تخمین زمان و هزینه پروژه
- 81. تضمین کیفیت نرم افزار
- 82. معیارهای کیفیت نرم افزار
- 83. استانداردهای کیفیت نرم افزار
- 84. بهبود فرآیند توسعه نرم افزار
- 85. مهندسی معکوس نرم افزار
- 86. تجزیه و تحلیل باینری ها (Binary Analysis)
- 87. مفهوم Buffer Overflow و Shellcode
- 88. سخت کردن نرم افزار (Software Hardening)
- 89. مفهوم Privilege Escalation
- 90. معماری های امنیتی سیستم عامل
- 91. مجازی سازی و امنیت: سندباکس ها (Sandboxes)
- 92. تحلیل بدافزار (Malware Analysis)
- 93. مقدمه ای بر بلاک چین (Blockchain)
- 94. کاربردهای بلاک چین در سیستم های توزیع شده
- 95. امنیت بلاک چین
- 96. مقدمه ای بر محاسبات کوانتومی
- 97. تاثیر محاسبات کوانتومی بر امنیت سیستم ها
- 98. الگوریتم های کوانتومی و امنیت سایبری
- 99. روندها و چالش های آینده در مهندسی نرم افزارهای سیستمی
- 100. تاثیر هوش مصنوعی بر توسعه نرم افزار
تگها:
Architecture
embedded systems
Minicomputer Software
OS
اصول طراحی
برنامهنویسی سیستمی
دوره آموزشی
زبان اسمبلی
سیستم عامل
سیستمهای توزیعشده
طراحی سیستم
مهندسی نرمافزار
مینیکامپیوتر
نرمافزار
نرمافزار سیستمی
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.