آموزش برنامه نویسی سیستم های لینوکس

Linux Systems Programming

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: خانواده سیستم عامل های لینوکس یکی از محبوب ترین پلتفرم ها برای استقرار برنامه های کاربردی مدرن است. این دوره به شما یاد می دهد که چگونه با سیستم عامل های لینوکس به زبان برنامه نویسی C تعامل داشته باشید. چه در حال نوشتن یک الگوریتم معاملاتی با تأخیر بسیار کم برای یک شرکت تجاری با فرکانس بالا باشید، چه درایورهای دستگاه برای یک سیستم تعبیه شده یا هر چیز دیگری، نرم افزار مدرن. برنامه ها اغلب بر روی سیستم عامل لینوکس توسعه می یابند. در این دوره، برنامه نویسی سیستم های لینوکس، یاد خواهید گرفت که چگونه با جنبه های مختلف سیستم عامل لینوکس در هنگام توسعه نرم افزار به زبان برنامه نویسی C تعامل داشته باشید. ابتدا نحوه ایجاد، خواندن و نوشتن فایل‌ها و دایرکتوری‌ها را با روش‌های مختلف کشف خواهید کرد. در مرحله بعد، نحوه تعامل با ورودی ها و خروجی های نرم افزار لینوکس، مانند آرگومان های خط فرمان، متغیرهای محیطی، لوله ها و سیگنال ها را کشف خواهید کرد. در نهایت، نحوه کنترل دسترسی به فایل ها و دایرکتوری ها از طریق مجوزها و حساب های کاربری را خواهید آموخت. پس از اتمام این دوره، مهارت ها و دانش برنامه نویسی سیستم های لینوکس با زبان برنامه نویسی C را خواهید داشت تا با اطمینان برنامه های مبتنی بر C را در سیستم عامل های لینوکس توسعه دهید و علاوه بر درک کامل تر از نحوه سیستم عامل لینوکس کارکرد.

سرفصل ها و درس ها

بررسی اجمالی دوره Course Overview

  • بررسی اجمالی دوره Course Overview

دسترسی به فایل ها Accessing Files

  • بررسی اجمالی ماژول و محیط Module and Environment Overview

  • POSIX، glibc، و شما POSIX, glibc, and You

  • I/O سطح پایین با تماس های سیستمی Low-level I/O with System Calls

  • نسخه ی نمایشی: کپی فایل با I/O سطح پایین Demo: File Copy with Low-level I/O

  • دسترسی تصادفی به فایل با ورودی/خروجی سطح پایین Random File Access with Low-level I/O

  • I/O پیشرفته سطح پایین با جمع آوری سریع پراکندگی Advanced Low-level I/O with Fast Scatter-gather

  • ورودی/خروجی سطح پایین پیشرفته با ورودی/خروجی دارای نقشه حافظه Advanced Low-level I/O with Memory-mapped I/O

  • فایل I/O با Streams File I/O with Streams

  • نسخه ی نمایشی: کپی فایل با جریان ورودی/خروجی Demo: File Copy with Stream I/O

  • نسخه ی نمایشی: مقایسه سرعت ورودی/خروجی سطح پایین و جریان Demo: Comparing Speeds of Low-level and Stream I/O

  • خلاصه ماژول Module Summary

مدیریت فایل ها و دایرکتوری ها Managing Files and Directories

  • نمای کلی ماژول Module Overview

  • فایل ها، دایرکتوری ها و جدول inode Files, Directories, and the inode Table

  • متادیتا فایل لینوکس Linux File Metadata

  • نسخه ی نمایشی: فراداده فایل را با آمار دریافت کنید Demo: Get File Metadata with stat

  • انواع فایل لینوکس و مجوزها Linux File Types and Permissions

  • پیوندهای سخت و پیوندهای نمادین Hard Links and Symbolic Links

  • فهرست راهنمای لینوکس Linux Directories

  • نسخه ی نمایشی: عبور از یک فهرست Demo: Traversing a Directory

  • رویدادهای سیستم فایل با inotify File System Events with inotify

  • نسخه ی نمایشی: با استفاده از API inotify Demo: Using the inotify API

  • خلاصه ماژول Module Summary

خط فرمان، محیط زیست و زمان The Command Line, the Environment, and Time

  • نمای کلی ماژول Module Overview

  • آرگومان های خط فرمان با argc و argv Command Line Arguments with argc and argv

  • استفاده از getopt برای گزینه های خط فرمان Using getopt for Command Line Options

  • نسخه ی نمایشی: استفاده از getopt برای تجزیه گزینه های خط فرمان Demo: Using getopt to Parse Command Line Options

  • کار با محیط زیست Working with the Environment

  • شروع با زمان Getting Started with Time

  • نمایش زمان قالب بندی شده توسط کاربر با قالب های strftime Display User Formatted Time with strftime Templates

  • ترکیب مناطق زمانی و مکان‌ها Incorporating Time Zones and Locales

  • اندازه گیری زمان فرآیند Measuring Process Time

  • خلاصه ماژول Module Summary

فرآیندها و لوله ها Processes and Pipes

  • نمای کلی ماژول Module Overview

  • فرآیند چیست؟ What Is a Process?

  • وضعیت خروج از برنامه Program Exit Statuses

  • ایجاد فرآیندها با fork() Creating Processes with fork()

  • اجرای برنامه ها با خانواده Exec Executing Programs with the Exec Family

  • چرخه حیات یک فرآیند The Lifecycle of a Process

  • نسخه ی نمایشی: ایجاد یک پوسته با fork()، خانواده Exec و waitpid() Demo: Creating a Shell with fork(), the Exec Family, and waitpid()

  • لوله چیست؟ What Is a Pipe?

  • نسخه ی نمایشی: ارتباط بین فرآیندی اولیه با لوله ها Demo: Basic Inter-process Communication with Pipes

  • به نام لوله Named Pipes

  • خلاصه ماژول Module Summary

کنترل دسترسی، هویت و مجوزها Controlling Access, Identity, and Permissions

  • نمای کلی ماژول Module Overview

  • مبانی کاربر و گروه User and Group Fundamentals

  • پرس و جو و فهرست کردن کاربران و گروه ها Querying and Listing Users and Groups

  • هویت واقعی و موثر فرآیند Real and Effective Process Identity

  • اصول مجوز فایل File Permission Fundamentals

  • نسخه ی نمایشی: ایجاد و تغییر مجوزهای فایل Demo: Creating and Modifying File Permissions

  • تفاوت های ظریف و توابع مالکیت فایل File Ownership Nuances and Functions

  • نسخه ی نمایشی: تخصیص و اصلاح مالکیت فایل Demo: Assigning and Modifying File Ownership

  • خلاصه ماژول Module Summary

تسلط بر سیگنال ها Mastering Signals

  • نمای کلی ماژول Module Overview

  • مبانی سیگنال Signal Fundamentals

  • نسخه ی نمایشی: انواع سیگنال رایج Demo: Common Signal Types

  • مدیریت سیگنال ها با سیگنال () Handling Signals with signal()

  • کنترل بهتر سیگنال با sigaction() Better Signal Handling with sigaction()

  • نسخه ی نمایشی: سیگنال را نادیده بگیرید Demo: Ignore Signal

  • نسخه ی نمایشی: Gracefully on Signal را خاتمه دهید Demo: Terminate Gracefully on Signal

  • نسخه ی نمایشی: پیکربندی مجدد پویا Demo: Dynamic Reconfiguration

  • نسخه ی نمایشی: گزارش وضعیت یا آمار Demo: Report Status or Statistics

  • نسخه ی نمایشی: Debugging را تغییر دهید Demo: Toggle Debugging

  • نسخه ی نمایشی: Timeout ساده Demo: Simple Timeout

  • نسخه ی نمایشی: وظایف برنامه ریزی شده Demo: Scheduled Tasks

  • خلاصه ماژول و دوره Module and Course Summary

نمایش نظرات

آموزش برنامه نویسی سیستم های لینوکس
جزییات دوره
6h 42m
66
Pluralsight (پلورال سایت) Pluralsight (پلورال سایت)
(آخرین آپدیت)
از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Christopher Hart Christopher Hart

کریستوفر هارت یک مهندس مشاور فنی برای سیسکو است که متخصص در راه حل های شبکه های سازمانی و مراکز داده است. کریستوفر به طور مداوم مهارت‌های توسعه نرم‌افزار پایتون خود را تقویت می‌کند و از ذهنیت‌های اولیه اتوماسیون و اصول DevOps دفاع می‌کند. کریستوفر از تولید مستندات فنی و آموزش، انتشار بیش از دوازده مقاله برای سیسکو و سخنرانی در Cisco Live 2021 لذت می برد. کریستوفر دارای مدرک لیسانس علوم در فناوری صنعتی از دانشگاه کارولینای شرقی است.