درباره این دوره درباره توسعه فراخوانی های رویه از راه دور شما است - من برای این دوره از سیستم عامل لینوکس استفاده خواهم کرد، اما اگر به آن عادت دارید می توانید از سیستم عامل ویندوز استفاده کنید. ماهیت و قدرت واقعی این دوره عدم استفاده از کتابخانه های شخص ثالث است. من در تمام دوره های دیگرم از این اصل پیروی می کنم. هر چیزی که از طریق دوره های من یاد می گیرید، از سطح زمین مطلق یاد می گیرید. این دوره اصول را نقض نمیکند و به شما یاد میدهد که چگونه تماسهای رویه از راه دور را گام به گام و از صفر مطلق بسازید - بدون چارچوب، ابزار، کتابخانههای پشتیبانی کننده یا هر چیز دیگری - فقط C خالص.
این دوره در واقع پایه و اساس بسیاری از پروژه های نرم افزاری سیستمی آینده را می گذارد. تعداد کمی از آنها در زیر آمده و بخشی از برنامه درسی این دوره است.
تماسهای رویه از راه دور (RPC) تکنیکی برای فراخوانی تابع/روش است که در واقع بر روی ماشینهای فیزیکی متفاوتی است که در جای دیگری در شبکه اجرا میشوند - از این رو رویههای راه دور نامیده میشوند. در این دوره با مفاهیم کار در پشت صحنه آشنا خواهید شد. همین مفاهیم را می توان برای پیاده سازی سایر مفاهیم برنامه نویسی سیستم، علاوه بر RPC، مانند - همگام سازی داده ها و بررسی وضعیت برنامه گسترش داد. این دوره قول می دهد که محتوای کاملی را در مورد توسعه RPCها در نسخه اولیه ارائه دهد.
همگام سازی داده ها - فرآیندی برای همگام سازی حالت کامل برنامه Heap با ماشین راه دور است. دستگاه از راه دور حالت پشته آینه ای را ایجاد می کند. در صورت خرابی اولین دستگاه، دستگاه راه دور میتواند کنترل را به دست بگیرد، زیرا تمام وضعیت مورد نیاز برای از سرگیری عملکرد دستگاه خراب را دارد.
نشانگر بررسی - این فرآیند ذخیرهسازی دائمی وضعیت حافظه برنامه در دیسک/فایل است، به طوری که میتوان برنامه را هر زمان که دقیقاً همان حالت حافظه را از عکس فوری حافظه ذخیره شده قبلی در حافظه ثانویه ایجاد کرد، مجدداً راهاندازی یا از سر گرفت./p>
نقطه چک باید در نسخه های بعدی این دوره ارائه شود.
چه کسی باید این دوره را انجام دهد؟
مبتدیان لطفاً با صلاحدید خود این دوره را بگذرانید. شما باید با اشاره گرهای C و نحوه چیدمان اشیاء C در حافظه خوب باشید. من انتظار دارم که در برنامه نویسی C حداقل از سطح مبتدی بالاتر باشید. این بدان معناست که فقط دانشجویان بسیار مشتاقی که می خواهند از باهوش ترین دانش آموز کالج خود برتری داشته باشند باید ثبت نام کنند. دانش آموزان متوسط لطفا بهانه. جویندگان کار و توسعه دهندگان حرفه ای باید ثبت نام کنند. مفاهیمی که از این دوره یاد می گیرید، زبان آگنوستیک هستند و با آموختن آن ها می توانید RPC/Data-Synch/Checkpointing را در هر زبان برنامه نویسی دلخواه خود پیاده سازی کنید. اگر فردا در جاوا کار کنید، باید بدانید که RPCها در پایین ترین سطح پیاده سازی چگونه کار می کنند.
پیش نیاز
C و مهارت در اشاره گرها پیش نیاز این دوره است. حداقل پس زمینه برنامه نویسی سوکت مطلوب است اما اجباری نیست. ما این دوره را از مبانی مطلق شروع کردیم و ابتدا پایه و اساس زبان آموزان را قبل از اینکه دوره را با سرعت کامل شروع کنیم، ایجاد کردیم. اگر با اشاره گرها و دستکاری حافظه در C خوب نیستید، لطفاً فقط پس از رعایت معیارهای پیش نیاز ثبت نام کنید.
همچنین لطفاً فقط به تماشای کدهای من ننشینید. کدهای خود را بنویسید، حتی اگر همان کدهای من باشد!
زبان برنامه نویسی مورد استفاده در این دوره:
ما دلایل قوی برای انتخاب زبان C برای این دوره داریم:
RPC تکنیکی است که در صورت دانستن مفاهیم می توان آن را در هر زبان برنامه نویسی دلخواه پیاده سازی کرد. یادگیری RPC با استفاده از C به شما کمک می کند تا بفهمید پشت صحنه چه اتفاقی می افتد. زبان C واقعاً جزئیات سطح پایین را در مورد نحوه عملکرد سیستم واقعاً نشان می دهد. در برنامه نویسی سیستم، C تنها زبانی است که می توان از آن استفاده کرد و حتی زمانی که صحبت از برنامه نویسی سیستم می شود، جایگزینی برای این زبان وجود ندارد.
کتابخانه شخص ثالثی وجود ندارد
هر منطقی که پیادهسازی میکنید، باید آن را از ابتدا اجرا کنید، از #include دوره های مرتبط RPC یکی از راههای انجام ارتباطات بین فرآیندی بین دو فرآیند در حال اجرا بر روی ماشینهای مجزا در شبکه است. همچنین ممکن است بخواهید دوره دیگری را که در آن تکنیک های IPC لینوکس مورد بحث قرار گرفته است، بررسی کنید. اخطار: این دوره دارای زیرنویسهای خودکار تولید شده توسط سیستم است که ممکن است کامل نباشند. لطفاً زیرنویسها را طبق راحتی خود غیرفعال کنید. برنامه درسی این دوره به دو بخش عمده تقسیم می شود - 1. درک مفهوم سریال سازی و سریال زدایی با جزئیات کامل 2. استفاده از Serialization و DeSerialization برای حل/ساخت واقعی سیستم. این شامل : ساخت تماسهای رویه از راه دور همگام سازی حالت نشان دادن وضعیت برنامه را بررسی کنید بخش 2، 3، 4، 5، 6 به ایجاد پایه ای برای تسلط کامل بر مفهوم سریال سازی و سریال زدایی اختصاص داده شده است. بخش 7، 8، 9 به ساخت و توسعه سیستم های فوق اختصاص داده شده است بخش 1 - شروع به کار فهرست محتویات کل دوره نصب لینوکس برای مبتدیان بخش 2 - سریال سازی چیست و چرا به آن نیاز داریم؟ بخش 3 - مفهوم سریالسازی و سریالزدایی دادهها سریال سازی و سریال زدایی از ساختارهای ساده C سریال سازی و سریال زدایی از ساختارهای تودرتوی C سریال سازی و سریال زدایی از ساختارهای اشاره گر C بخش 4 - جریانها - ساختار داده طراحی و پیاده سازی بخش 5 - اجرای سریالسازی و سریالزدایی دادهها در C سریال سازی و سریال زدایی از ساختارهای ساده C سریال سازی و سریال زدایی از ساختارهای تودرتوی C سریال سازی و سریال زدایی از ساختارهای اشاره گر C یک مثال بخش 6 - سریال سازی ساختارهای داده عمومی از نشانگرهای تابع برای سریال کردن فضای خالی * بخش 7 - اجرای فراخوانی روش از راه دور از ابتدا درک مفهوم و طراحی RPC توسعه مقالات خرد مشتری - مارشال کردن آرگومان های RPC توسعه مقالات خرد سرور - UnMarshalling آرگومان های RPC در حال توسعه خرد سرور - مارشال کردن نوع بازگشت RPC در حال توسعه مقالات خرد مشتری - UnMarshalling نوع بازگشت RPC مفهوم هویت RPC موارد استفاده RPC بخش 8 - همگام سازی وضعیت بخش 9 - ایست بازرسی (به زودی) **آزمایش حسابرسی ** 30 سپتامبر 2018 - اضافه شدن بخش 8 در مورد همگام سازی حالت 29 سپتامبر 2018 - بخش 6 درباره سریال سازی ساختارهای داده عمومی اضافه شد
نمایش نظرات