Sunday, June 7, 2020

Когато RAM паметта беше много малка или любопитни факти за историята на микрокомпютрите в България / When the RAM was very little or some curious facts about the microcomputers' history in Bulgaria

Понякога дискутирам със студенти и ученици, когато разработват своя проект или дипломна работа, включващи софтуер, какъв е алгоритъма? Ами ето, показват ми програмата и почват да обясняват как работи. А как са организирани данните? Ами ето, казват, в тези файлове или тази база-данни. На въпроса, този код, с така хубаво написани на английски дълги имена на променливи, откъде е (защото перфектните англисйки имена показват, че е отнякъде)? Отговор- ами, май го бях взел/а (считайте копирал/а) от еди къде си от нета, там има такива свободно достъпни обекти, функции и т.н.

Не може да се отрече забележителната способност на сегашното поколение да използва готови или полу-готови ресурси в Интернет, да намери видео-туториал по въпроса, вместо да се чете текст. Тези налични онлайн ресурси, често са организирани в йерархична стуктура и програмиращите на по-високо ниво изобщо не се интересуват от по-ниското, кой го е правил, надеждно ли е, може ли да има пробиви. Този подход на разработка на софтуер има своите предимства и недостатъци, които сега няма да обсъждаме. Времената се менят и щом може така (copy-paste на код), значи може... става по-бързо! Разбира се, има и програмисти, които почват от идеята, после алгоритъма, после дизайн на базата-данни, интерфейса, след това създаване на прототипа на софтуера, тестване и т.н. Но те са по-малкия процент...

Искам да разкажа няколко любопитни факта за зората на микрокомпютрите в България, през 80-те, когато всичко имаше значение- големината на програмата, обема на данните, бързината на алгоритъма. И най-вече RAM (Random Access Memory) паметта. Ниските параметри на тогавашните  PC-та имаха и едно предимство, учеха на внимателно отношение към програмирането, оптимизация на кода и разбиране на хардуера.

Микрокомпютър "ИМКО-2"
По време на една математическа лагер-школа, в един лагер извън града (тогава имаше такива бази, подходящи да се настанят, например, 100 младежи), през 1983 г., един ден дойде служебен бус и ни стовари кашони с техника. От кашоните изскочиха 4 нови микрокомпютъра ИМКО-2, които внимателно настанихме в една зала. Тогава тези машинки бяха много скъпи, един ИМКО-2 (или "Правец 82") струваха колкото една нова кола "Москвич" или "Жигули". Стояхме по вечерите и чакахме ред пред залата да се доберем и седнем на някой компютър. Забелязахме, че имат вградени дори 2 езика, Асемблер (за управление на хардуера на "ниско ниво") и BASIC- език за програмиране на "високо ниво". Имаха 8-битов процесор (6502) и 48 kB оперативна памет (RAM). Тогава направих и първата си програма, една мини игра, обстрелване на обект от оръдие, като се използва физичния закон за движение на тяло, хвърлено под ъгъл на хоризонта. И чертане на параболи! По-късно, през 1988 г., когато се запознах с един от създателите на електрониката в България, проф. д.т.н. инж. Йордан Боянов, започнахме да правим и публикуваме и по-сложни програми в областта на компютърната графика и електронна музика, на BASIC и PASCAL. Повече за Професора, който е и един от създателите на нашата телевизия, както и главен редактор на сп. "Млад конструктор", може да прочетете тук  .

Каква е предисторията на нашите микрокомпютри. В края на 70-те, явно виждайки постиженията на САЩ и Япония в областта на електрониката, Държавният комитет за наука и технически прогрес и Министерство на народната просвета възлагат на група специалисти от Института по техническа кибернетика и роботика при БАН да разработят български микрокомпютър. Така през 1980/81г. се появява "ИМКО-1", а към края на 1982 г.- усъвършенстваният вариант "ИМКО-2". Наименованието идва от "индивидуален микрокомпютър" и от този вариант са раздадени на училищата около 200 бр. Приборостроителният завод в Правец започва масовото производството на тези микрокомпютри под името "Правец 82".  Микрокомпютрите копират архитектурата на Apple II,  но изполват и произведени от Източния блок електронни елементи.

Микрокомпютър "Правец 82"
"ИМКО-2" и "Правец 82" имаха само 48 KB RAM. Забележете, тук говорим само

Структура на памета
за кило-байтове, дори не за мега. И вграден Асемблер и BASIC. Имайки предвид тази много ограничена памет, всяка програма се прецизираше и ако е нужно, се зареждаше на части. Ето една програма, "Композитор 1", за "Правец 82", реализирана на BASIC от автора на този материал и публикувана съвместно с проф. Боянов в сп. "Млад конструктор", 1988 г.

 

По това време не беше ясно дали бъдещето е за микрокомпютрите или за големите машини (mainframes). Като студенти дори ни тормозиха да реализираме програмите на терминали на големи машини, като VAX, на FORTRAN, а микрокомпютрите считаха за аматьорски устройства, за игри или за училищното образование.

Росен Петков, с компютър "Правец 82" с 5.25" флопи-дисково устройство, в Националния студентски дом
Първоначално програмите се запаметяваха на магнитна лента, използваха се аудио-касетофони с аудио-касетки (но качествени!). Методът не беше много надежден и се правеха няколко копия на касетки, за всеки случай.

Външно запаметяващо устройство- касетофон
DOS (Disk Operating System) се зареждаше от средно-големи, 5.25" дискети, чрез флопи-дискови устройства. Такива дискови устройства първоначално се внасяха, а после се произвеждаха в Чирпан.

5.25" дискета

По-късно, към края на 80-те се появиха и 16-битовите микрокомпютри "Правец 16".

Такива бяха първите микрокомпютри. Въпреки малката си RAM памет (48 kB), те успяваха да поберат нужния код и данни. И бъдещето се оказа на PC-тата, много от производителите на  големи компютри (mainframes) фалираха! В края на 90-те стана възможно производството на памети с много голям капацитет. Локалните мрежи и PC -тата бяха свързани глобално и Интернет направи техниката и ресурсите много по-достъпни. След 2014, бумът на смартфоните и рязкото поевтиняване на електронните устройства (благодарение на изнесените заводи в Китай и все по-развитите нанотехнологии за производство на чипове) "демократизира" достъпа до техника. Един любопитен факт, при едно посещение на Сиера Леоне и пътуване в провинцията, видях много села без ток и вода, но с генератори и зарядни за телефон и услуга "зареждане на мобилен телефон", т.е. в джунглата може да нямаш вода или ток, но има начин да си заредиш телефона 😊 А сега, наличието на няколко десетки GB памет в телефона, е задължително!

Росен Петков
Председател на СОКИ и преподавател по "Компютърна графика" в ТУ-София и ТУЕС
https://bg.wikipedia.org/wiki/Росен_Петков

No comments:

Post a Comment