
تیم بین بخشی برای توسعه، پیاده سازی و بهره برداری از سیستم Sbor-V و ECU. نشسته (از چپ به راست): c/n Evgeniy Zhukov، رئیس توسعه Ph.D. نیکولایف آندری، سرب. برنامه نویس Sereda Valentina، برنامه نویس Elena Karpushenko; ایستاده: ved. الکسی کوسف برنامه نویس، ولادیمیر گاوریلوف سرگرد، مدیر عملیات سیستم Collector-V و ECU p/p علیم یوسوپوف، گنادی آکسیوتا، رئیس توسعه زیرسیستم ذخیره سازی. مرکز نمایشگاه کیهان پلستسک، 1998
ایجاد نرم افزار برای سیستم های "Collection-V" و "کنترل از یک مرکز واحد" (ECU) توسط مجتمع اندازه گیری زمینی کیهان پلستسک در دهه 90.
معرفی
هدف از این مقاله رفع پرده پنهان کاری در مورد توسعه نرم افزار مورد استفاده برای آزمایش موشک های بالستیک استراتژیک است. این مقاله به طور خلاصه تداوم نسل های توسعه دهندگان شوروی از به اصطلاح شاراشک ها و توسعه دهندگان دهه 1990 را نشان می دهد که برای دفاع و فضا کار می کردند. بر اساس متن، پیوندهایی هم به توسعه دهندگان نرم افزار معروف غرب داده می شود و هم به "سربازان ناشناخته" شراشکاهای نجیب شده با ظاهری جدید، که با آزادی کامل زندانیان محروم در طول دوران با استالینیستی متفاوت است. ساعات خارج از کار، که حقوق آنها ماه ها به تعویق افتاد و مانند "شارشک ها" در محل کار تغذیه نمی شد. این مقاله دلیل ایجاد نرم افزار را نشان می دهد و همچنین برای اولین بار لایه های جداگانه ای را نشان می دهد که ایده برتری نرم افزار نظامی روسیه و اوکراین در دهه 1990 نسبت به نرم افزارهای مصرف کننده غرب آن زمان را نشان می دهد.
بنابراین، در سال 1991، کتابهایی درباره الگوهای یکپارچهسازی برنامههای کاربردی سازمانی هنوز نوشته نشده بود، که بعدها، پس از ربع قرن ظاهر شد [1]. ما باید بر این درک تکیه میکردیم که مهمترین پیام برای ادغام باید پیامهای ناهمگون باشد که از طریق خطوط تلگراف و تلفن محافظت شده توسط تجهیزات رمزنگاری ارسال میشوند. ساخت و ساز، همانطور که در حال حاضر مرسوم است، پشته پروتکل بر اساس مدل مرجع تعامل سیستم های باز در رابطه با متمرکز کننده اطلاعات انجام شد.

در فرآیند اصلاح EMWOS، عنصر سوئیچینگ به دلیل ساده شدن IVS و انتقال پیچیدگی به عنصر جهانی - متمرکز کننده اطلاعات، نیازمند پیچیدگی معماری آن بود که از همان ابتدا انتظار می رفت. همانطور که در شکل نشان داده شده است، نرم افزار CI با لایه های اضافی بارگذاری شد: برنامه، ارائه، جلسه و حمل و نقل.

سطوح نرم افزار متمرکز کننده اطلاعات برای ادغام سیستم های اندازه گیری (IS) با شبکه های ناهمگن انتقال و پردازش اطلاعات
شرح نحوه طراحی هر یک از 7 سطح مرکز اطلاعات احتمالاً در یک مقاله نمی گنجد، بنابراین ارزش نمایش جالب ترین سطوح را دارد.
بنابراین، در مورد لایه فیزیکی، به سادگی می توان گفت که اینها کانکتورها و کابل ها هستند. به عنوان مثال، بین مرکز محاسباتی کیهان پلستسک و Vega IS Vorkuta یک خط ارتباطی رمزنگاری وجود داشت که از طریق آن در سال 1993 برای اولین بار امکان تبادل اطلاعات بین دو هاب وجود داشت. خط ارتباطی بسته توسط تجهیزات "داخلی" به عنوان تجهیزات پایان کانال داده (AKD) ارائه شد.

پژوهشکده ارتباطات (مارفینو):

در رمان جذاب سولژنیتسین "در اولین دایره" می توانید در مورد نحوه کار زندانیان و ایجاد تلفن مخفی اطلاعات کسب کنید. نسخه صفحهنمایش این رمان در یوتیوب [5] موجود است. با کمبود زمان، توصیه می کنم به مشخص ترین لحظات سازماندهی علمی کار مهندسان "شاراشکا" نگاه کنید [6-10].
ما باید این کار غم انگیز شراشکای زندانیان شوروی را لمس می کردیم. حتی اجازه نداشتیم بدانیم تجهیزات چیست و چگونه کار می کند. ما فقط می توانستیم کابل خود را بدون مشارکت خود به تجهیزات وصل کنیم. اگر کار کرد، پس ما موفق شدیم، و اگر کار نکرد، سرنوشت نیست - پروژه شکست خواهد خورد.
این کار توسط عوامل بسیاری پیچیده شد. با این حال، در پلستسک، میخائیل موکرینسکی و ایگور شیپشا موفق شدند کابل ها را "بی سر و صدا و مسالمت آمیز" منتقل کنند، دو هاب را به هم متصل کنند و با آزمون و خطا راهی برای انتقال داده ها از طریق یک خط بسته پیدا کنند و نیکولایف یک "پروتکل ردیابی" ویژه ایجاد کرد. که تجهیزات یک خط بسته را در سطح حمل و نقل مجبور می کند در صورت خرابی و از دست دادن هماهنگی بین دو هاب، ارتباطات بازیابی می شوند. اما همه چیز به این آرامی و آرام پیش نرفت. در نوریلسک، یک سرباز، همانطور که اکنون به یاد دارم، زایتسف، نتوانست کابل را به تجهیزات بسته شدن اطلاعات در جایی که باید باشد وصل کند. سپس آندری نیکولایف و آناتولی کراوچنکو در اتاق مخفی را زدند و وقتی در باز شد، وارد اتاق شدند و جنگنده را به عقب هل دادند و خودشان کابل را به تجهیزات مخفی تلفن وصل کردند. همه چیز کار کرد. این یک موفقیت بود. و روز بعد مجبور شدم نامه ای توضیحی به FSB بنویسم. اما معلوم شد که دیگر زمان فرستادن مجرمان به زندان مارفینو نیست. و خدا را شکر!

تجهیزات مخفی تلفن "داخلی" [11]
متعاقباً آداپتوری توسعه یافت که هزینه هاب را کاهش داد زیرا در همه جا به مجموعه کاملی از آداپتورها نیاز نبود. این قبلاً ابتکار شخصی نیکولایف، موکرینسکی و شیپشا بود.

الگوریتم پیاده سازی نرم افزار "Collection-V" سطح جلسه
توصیف همه چیز در چارچوب مقاله غیرممکن است، بنابراین نوشتن چیزی که می تواند خواننده را شگفت زده کند منطقی است.
سه لایه بالای مدل مرجع پایه برای اتصال سیستم های باز (پنجم - جلسه، ششم - نماینده، هفتم - برنامه) لایه های کاربردی گرا محسوب می شوند.
با گرفتن هر کتابی می بینیم که سطح جلسه عملا شرح داده نشده است. لایه جلسه بحث برانگیزترین لایه در ادبیات توصیف شده است. از یک طرف، این تصور به وجود می آید که نویسندگان چیزی برای گفتن ندارند. به عنوان مثال، V.G. اولیفر و N.A. اولیفر [13] این 8 خط ناقص را داد! از سوی دیگر، توصیف سطح جلسه به وضوح ماهیت تحصیلی دارد [14]: F. Halsall فاقد دوگانگی در انتقال داده است، مفهوم "توکن" اجازه نمی دهد نرم افزار در یک بازه زمانی معقول پیاده سازی شود. عدم وجود مکانیزم های واقعی تبادل داده که در سیستم عامل پیاده سازی شده است. سووتوف بی.یا. و Yakovlev S.A. معتقدند که در عمل این سطوح به دلیل پیچیدگی اجرا نمی شوند [15].
فقدان متدولوژی باعث شده است که برنامه نویسانی که فقط در اینترنت کار می کنند راهی برای خروج از این وضعیت دشوار با ادغام هر سه لایه (جلسه، ارائه و برنامه) در یک لایه کاربردی بیابند [16]. اگرچه در سال 1991 چه نوع اینترنت در اتحاد جماهیر شوروی وجود داشت!؟ سطح جلسه سیستم "Collection-V" و PAS کنترل سیستم های "Vega" از ECU به عنوان یک سطح جداگانه توسعه یافته است که منعکس کننده یک جلسه کاری خاص روی محصول آزمایش شده است. روش اجرای سطح جلسه در سیستم "Collection-In" بر اساس ایجاد اولیه - پاکت های ویژه برای اطلاعات مسیر معنی دار است.
به طور سنتی، لایه نشست، تمام تماسهای نرمافزار شبکه را در درون خود بومیسازی میکند، و مجموعهای از برنامههای اولیه را به برنامههای دیگر ارائه میدهد که به آنها اجازه میدهد تا اطلاعات را بدون کنکاش در جزئیات عملکرد شبکه مبادله کنند. ویژگیهای اولیه باید شامل چنین ویژگیهایی باشد که امکان شناسایی آزمایشها را بر اساس نوع موشک بالستیک (شماره محصول)، شماره ترتیب پرتاب موشک در طول روز، تاریخ و زمان آزمایش، و شماره منحصربهفرد موشک فراهم میکند. ابزار اندازه گیری استفاده از ابتدایی های سطح جلسه امکان ارائه اطلاعات کامل در مورد یک جلسه اندازه گیری مسیر خارجی را فراهم می کند.
برای پیاده سازی لایه نشست، کتابخانه ای از ابتدایی ها سازماندهی شد. حداقل مجموعه اولیه زیر در اینجا گنجانده شده است: الف) تشکیل جلسه. ب) ارسال یک بلوک از داده ها؛ ج) جلسه را ببندید.
در سیستم "Collection-In"، این سه اصل اولیه امکان انتقال اطلاعات از حاشیه به مرکز جمع آوری را می دهند. همه آنها در قالب یک کتابخانه به زبان "C" ساخته شده اند و در فرآیند ترجمه به برنامه های انتقال داده ها به شبکه پیوست می شوند. بنابراین، برای انجام یک انتقال، برنامه ابتدا یک جلسه باز کردن را با OPEN اولیه انجام می دهد. سپس هر بلوک داده در یک پاکت کپسوله شده و به شبکه ارسال می شود. در پایان انتقال اطلاعات در مرکز جمع آوری، جلسه با ارسال یک CLOSE اولیه بسته می شود.

روش مدیریت نرم افزار CI در سطح جلسه
کنترل اداری از ویژگی های سیستم عامل یونیکس مانند صف های پیام، مدارهای مجازی و فایل های fifo که از ویژگی های یونیکس هستند بهره می برد. "set session" اولیه سازماندهی فایل های fifo را در دو انتهای شبکه و یک خط مجازی بین آنها برای ارسال پیام فراهم می کند. پرتاب توسط اپراتور انجام می شود و توسط او کنترل می شود. برای ایجاد یک جلسه (برای آزمایش یک موشک بالستیک)، عملکرد پروتکل های TCP / IP در ابتدا با آزمایش با برنامه پینگ بررسی می شود. در مرحله بعد، داده اولیه انتقال بلوک بر روی فایل fifo به همان روشی که در هر فایل دیگری نوشته می شود. و تسهیلات شبکه یونیکس در انتهای دیگر انتقال این اطلاعات را به یک فایل fifo جفت شده در دستگاه گیرنده ارائه می دهد. بازیابی پیوند با عملیات جدا کردن و برقراری مجدد پیوند انجام می شود. موضوع عدم وجود یک کانال با تأیید سرتاسر پیام های آزمایشی که شامل دو کانال (به و از آنجا) است، روشن می شود. خاتمه یک جلسه، ارتباط بین فایلهای fifo را که در طرف مقابل شبکه قرار دارند، قطع میکند. همه رویه ها توسط یک برنامه طراحی شده برای کنترل اداری و جدا از برنامه های ارتباطی لایه های کاربردی و ارائه انجام می شود. نرم افزار سطح جلسه سیستم "Sbor-V" و نرم افزار مدیریت مجموعه سیستم های "Vega" از ECU در نمودارهای زیر نشان داده شده است. یک ترمینال مجازی جداگانه برای مدیریت اداری سطح جلسه اختصاص داده شده است - یک صفحه نمایش رایانه شخصی از AWP ECU. APM ECU از مجموعه کاملی از مکانیسمهای تبادل بین فرآیندی استفاده میکند: صفها، فایلهای fifo، سیگنالها، مناطق حافظه مشترک که مخصوصاً برای نمایش روی صفحه در حالت تک صفحهای مفید است.

نرم افزار برای متمرکز کننده اطلاعات از راه دور سیستم "Collection-V".

نرم افزار مرکز محاسباتی فضای پلستسک سیستم Sbor-V - سطح جلسه

نرم افزار مرکز جمع آوری، نرم افزار ایستگاه کاری ECU - سطح جلسه
تکنیکی برای اطمینان از فوریت ارسال پیام ها
سیستم "Collection-V" داده های اندازه گیری مسیر را ارسال می کند. به موازات این امر از دستورات کنترلی سیستم ECU استفاده می شود. بنابراین، جداسازی پیام ها با توجه به میزان فوریت ضروری شد. در سال 1993، کتابخانه STL هنوز توسط استپانوف و منگ لی ایجاد نشده بود، بنابراین، آندری نیکولایف، تنها با تکیه بر قدرت خود، به همراه والنتینا گوردینکو، طرحی را برای استفاده از یک مسیر مشترک پیشنهاد و اجرا کرد که در آن مکانیسم هایی ایجاد می شود. امکان انتخاب پیام هایی با فوریت های مختلف و انباشت متوسط پیام های اطلاعاتی را فراهم می کند. در عین حال، همه چیز توسعه یافته باید در داخل سازنده و سازمان عامل باقی می ماند. با انجام انتخاب پیام، پیام ها بر اساس فوریت ارسال می شد. بلوک های فوری داده همیشه قبل از بلوک های کمتر فوری قرار می گیرند. بیایید ببینیم چگونه ارائه شده است.
سیستم "Collection-V" و کنترل PAS IS "Vega" از ECU در جلسه تبادل بلوک های داده از دو کلاس فوریت استفاده می کند. طبقه اول فوریت شامل به اصطلاح "داده های فوری" است. آنها عمدتاً شامل دستورات کنترلی و رسیدهای این دستورات هستند. حداکثر تاخیر مجاز انتقال را دارند. خارج از محدوده تحمل تاخیر، فرمان دیر در نظر گرفته می شود و دیگر مربوط نمی شود و بنابراین باید از شبکه حذف شود. علاوه بر داده های فوری، دسته دومی از پیام ها نیز وجود دارد - داده های دائمی (عادی). آنها نباید گم شوند، اما نباید در گذر فوریت هایی که باید "جای خود را بدهند" دخالت کنند. استفاده از مکانیسم بافر حلقه در ورودی نقطه دسترسی به خدمات لایه انتقال به شما امکان می دهد یک تقسیم مجازی مسیر انتقال را به مسیر داده های عادی و مسیر سیگنال های کنترل انجام دهید. در خروجی از سطح انتقال، بافر حلقه در نقطه ای که جریان ها از منابع مختلف اطلاعات همگرا می شوند، یعنی در مرکز جمع آوری اطلاعات مسیر خارجی، در رایانه که بلوک های اطلاعاتی را از سطح انتقال به داده ها بالا می برد، مورد نیاز است. سطح جلسه به منظور مسیریابی و/یا پردازش بیشتر.
بافر حلقه یک صف پیام را تشکیل می دهد که بر اساس اولین در اول خروج ساخته شده است. برای درک بهتر نحوه عملکرد یک بافر حلقه، بیایید با فرض اینکه طول بلوک ها یکسان هستند، وضعیت را ساده کنیم. سپس کار بافر توسط دو متغیر نمایه سازی تعیین می شود: in - نشان دهنده موقعیتی است که عنصر در آن نوشته شده است، خارج - نشان دهنده موقعیتی است که از آن بازیابی شده است. اگر نمایه سازی این آرایه هیچ محدودیتی نداشته باشد، ایده آل خواهد بود. با این حال، هر آرایه محدود نیز کاملاً مناسب است: به هر حال، هنگامی که یک بلوک خوانده شد، دیگر استفاده نمی شود. بنابراین می توان از محل آن مجددا استفاده کرد.

روش پیشنهادی و پیاده سازی شده برای تعامل یک طرفه اشیاء جلسه
بافر حلقه برای ذخیره موقت بلوک های نامحدود داده تا زمانی که یک "پنجره" در جریان داده های فوری وجود داشته باشد استفاده می شود. عمق بافر باید به اندازه ای باشد که در صورت لزوم، اطلاعات "عادی" یک جلسه را در خود جای دهد. با توجه به اینکه اندازه بافر می تواند قابل توجه باشد، می توان آن را در یک فایل قرار داد و در یک درایو دیسک ذخیره کرد. این به شما امکان می دهد تا یک گروه بندی متوالی از جریان های داده های فوری و "عادی" را در یک مسیر مشترک سازماندهی کنید و به داده های فوری اولویت دهید. الگوریتم فرآیند مرتب سازی داده ها در مستندات سیستم "Collection-B" و ECU، الگوریتم ها در قالب شبه کد توضیح داده شده است. بنابراین، در اینجا الگوریتمی برای کار با پیامهای فوریت متفاوت در شبه کد نیز ارائه میکنیم.

شبه کد فرآیند انتخاب پیام های شبکه فوری و دائمی: n تعداد عناصر موجود در بافر است. N اندازه بافر است. X - محتوای پیام[/center]
نتیجه
کار بر روی سیستم های Sbor-V و ECU با موفقیت به پایان رسید. ده ها آزمایش موشکی با اطلاعات به موقع ارائه شد. مسیرهای پروازی موشک ها ساخته شد که امکان گزارش فوری نتایج پرتاب موشک های بالستیک استراتژیک اعم از زمینی و دریایی و گزارش مسیر پرتاب وسایل پرتاب فضاپیما را فراهم کرد.
سیستم ECU هم از نظر اطمینان از آماده سازی Vega IS برای آزمایش و هم از نظر کنترل تطبیقی مجتمع اندازه گیری زمینی با موفقیت عمل کرد.
سیستمهای توسعهیافته با موفقیت در فضای فضایی پلستسک به کار گرفته شدند که تیز کردن شمشیر هستهای را آسانتر کرد. سیستم های اندازه گیری موجود در IVS سیستم های "Collection-V" و ECU در زمان سال 1998 در شکل نشان داده شده است:

نقاط اندازه گیری که به نفع کیهان پلستسک عمل می کنند و در سیستم Sbor-V و ECU ادغام شده اند.
توسعه سیستم های "Collection-V" و ECU امکان اعمال روش های جدید را برای ایجاد و پیاده سازی سیستم های اطلاعاتی در اوکراین فراهم کرد. اینها شامل سیستم های جمع آوری در آب و هواشناسی، مشاهدات حسگرهای لرزه ای، "سیستم ناوبری و پشتیبانی موقت اوکراین"، ادغام سوئیچ های ناهمگن شبکه سلولی Life و غیره است.
جنگ سرد رسماً با تسلیم گورباچف در مالت و فروپاشی اتحاد جماهیر شوروی به پایان رسید. اما هنوز "پارتیزان" جنگ سرد وجود داشتند که به اصطلاح تا نزدیک شدن نیروهای اصلی مقاومت کردند. در آن زمان همه چیز به یک نخ آویزان بود، اما ما موفق شدیم.
منابع
1. Hop G., Wolf B. الگوهای یکپارچه سازی برنامه های سازمانی. طراحی، ساخت و استقرار راه حل های مبتنی بر پیام. M.: ویلیامز، 2016.
2. https://ru.wikipedia.org/wiki/NII_Communications.
3. https://topos.memo.ru/en/node/57. مارفین شارشکا. آدرس: مسکو، خیابان. بوتانیچسکایا، 25.
4. https://sky-hexe.livejournal.com/383686.html. هرج و مرج معماری Marfinsky.
5. https://www.youtube.com/watch?v=dxEOZtyHHhg. فیلم "در اولین دایره".
6. https://www.youtube.com/watch?v=FtfZAVZmH3E. تریلر «در اولین دایره».
7. https://www.youtube.com/watch?v=AWwaCwtsCpI&t=117s. "در اولین دایره." گفتگو در مورد زمان توسعه با آباکوموف.
8. https://www.youtube.com/watch?v=6CZQhKtww6I&t=64s. "در اولین دایره." گفتگو با مهندس ارشد توسعه در مورد زمان بندی با آباکوموف.
9. https://www.youtube.com/watch?v=1RuFU1FHAI0&t=20s. "در اولین دایره." بیان مشکل برای توسعه تجهیزات برای بسته شدن رمزنگاری اطلاعات توسط آباکوموف.
10. https://www.youtube.com/watch?v=9pt6UFQihUo. باطنی کار مهندسی در شارشکا.
11. https://hodor.lol/post/50778/ یک بار "فوق محرمانه".
12. ثبت اختراع اوکراین به شماره 25664 A, G06f13/00. Pristriy spoluchennya / Mokrinsky M.O., Nikolaev A.V., Shipsha I.M. — شماره 97052331; Appl. 21.05.1997 اردیبهشت 30.10.1998; انتشارات 6/XNUMX/XNUMX، بلوار. شماره XNUMX.