Пользователям о «Корвете». Журнал «Радио» №12/1989г., стр.33-36

 

 

ПОЛЬЗОВАТЕЛЯМ О «КОРВЕТЕ»

 

 

| КОМАНДА STAT | КОМАНДА PIP | ПРОЧЕЕ ПО НА ПК «КОРВЕТ»|

 

 

ОПЕРАЦИОННАЯ СИСТЕМА И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

 

Мы уже рассмотрели команды управляющих символов, а также встроенные команды, вхо­дящие в операционную систему СР/М. На очере­ди — транзитные.

Транзитных команд может быть очень много. Они хранятся постоянно на диске в виде команд­ных файлов. По существу, любая программа в машинных кодах может являться транзитной, а все файлы, содержащие их, имеют расширение своего имени СОМ. Приведем примеры таких стандарт­ных программ:

STAT               предоставляет пользователю информа­цию о состоянии диска (от англ. status — состояние);

PIP                  осуществляет обмен данными с пери­ферийными устройствами. Она необ­ходима также при копировании систем­ного диска;

ED                    команда позволяет пользователю за­пустить текстовый редактор (от англ. editor — редактор);

SUBMIT           предоставляет возможность запустить последовательность команд, указанных в заранее подготовленном файле;

ASM                 позволяет произвести перевод програм­мы, написанной на языке Ассемблер при помощи редактора ED или какого-нибудь другого, в шестнадцатиричный файл с расширением HEX. Его, в свою очередь, можно преобразовать в командный файл при помощи программы LOAD;

LOAD               команда используется для преобразова­ния шестнадцатиричного файла в файл, содержащий машинные коды;

DDT                 позволяет проследить процесс работы различных программ в машинных кодах и, таким образом, выявить имеющиеся в них ошибки (от англ. dinamic debug­ging tool — динамическая отладка про­грамм);

DUMP              используется для вывода на экран дис­плея или на принтер в шестнадцатирич­ном формате содержимого командных файлов;

FORMAT          форматирует диски (от англ. format — форматировать);

SYSGEN           копирует ОС с диска на диск (от англ. system generation — создание системы).

 

Перечислим функции команды STAT.

1.        Прежде всего, она может выводить на экран объем свободного пространства на всех используе­мых в настоящее время дисках и режим доступа к дискам. Напомним, что режим доступа бывает двух типов: R/O (от англ. read only — только чтение) и R/W (от англ. read write — чтение и за­пись). На диск с доступом R/O нельзя ничего за­писывать. Это значит, что вы не можете ни допол­нить содержимое этого диска, ни удалить какие-либо файлы. С такого диска информацию можно только читать. Доступ R/W означает, что с диска можно читать и можно записывать на него инфор­мацию.

2.        STAT может выводить на экран характеристи­ки как отдельных файлов, так и их групп. Для это­го в качестве операнда нужно использовать соот­ветствующее имя или, применяя глобальные симво­лы, обозначить группу файлов.

3.        Эта команда используется для защиты отдель­ных файлов и целых их каталогов (присваивая им статус R/O).

4.        Она позволяет создавать скрытые файлы. С по­мощью команды STAT им присваивается специаль­ный атрибут, и имя файла не будет выводиться на экран по команде DIR из соображений секретности.

5.        Команда STAT позволяет посмотреть номер активной области, определенный командой USER.

6.        Обычно стандартным периферийным устрой­ствам присвоены некоторые логические имена. Например, консоль — CON: принтер (цифропечать) — LPT: или PRT: и т. д. По команде STAT вы можете узнать, какие логические имена присвое­ны, а также изменить их, если есть желание, или завести новые из списка разрешенных имен, кото­рый также выводится по команде STAT.

 

Разберем эти функции по порядку. Файл STAT.СОМ должен находиться в директории вашей актив­ной области. Попробуем набрать команду STAT без операндов. На экране тут же появятся cледующие строки:

 

A>STAT

A:R/W SPACE: 140K

А>

 

Программа STAT вывела на экран сообщение о статусе диска R/W (или R/O) и размере свободно­го пространства. Если во все дисководы вставлены диски, то подобная информация появится обо всех дисках. Отметим, что по команде STAT будут просмотрены остальные диски, только если к ним уже обращались с какой-либо командой или был выполнен «теплый» старт системы. Другими сло­вами, ОС должна знать, что мы вставили диски в дисководы.

 

   Если в качестве операнда у команды STAT ис­пользуется имя какого-либо файла, то мы можем получить информацию о его размерах и статусе. Например, если вы интересуетесь размером файла ТЕХТ.ТХТ, то по команде STAT TEXT.TXT вы получите следующую информацию:

 

  A>STAT ТЕХТ.ТХТ

  RECS   BYTES  ЕХТ  АСС

  110    14К    1    R/W А:ТЕХТ.ТХТ

  BYTES REMAINING ON A:476K

  A>

Первая строка этого сообщения — названия столб­цов. Вторая — содержание соответствующих столб­цов. На третьей строке указывается свободное пространство на диске. В этом сообщении содер­жится информация о количестве записей в дан­ном файле, его размере и уровне защиты.

 

Разберемся в том, какой смысл имеют выводи­мые на экран характеристики.

 

Запись является единицей объема информации, хранимой на диске. В СР/М длина записи равна 128 байтам. Число, указанное в графе RECS, равно количеству 128-байтных записей в файле, а указанное в графе BYTES представляет собой округленный размер файла в килобайтах.

 

Еще одной единицей измерения объема файлов в СР/М является экстент. Он равен 16К. Графа ЕХТ содержит размер файла в экстентах. При­ращение в этой графе может быть только целым. Как правило, эту цифру можно не принимать во внимание.

 

Код, напечатанный в столбце АСС, представ­ляет собой статус защиты файла: R/W или R/O.

 

В команде STAT можно использовать глобаль­ные символы * и ?.

 

Мы многократно упоминали, что файлы можно защищать. Но пока непонятно, как это сделать. Сейчас пришло время овладеть этой премудро­стью. Для установки статуса защиты необходимо в качестве второго операнда команды STAT ис­пользовать $ R/W или $ R/O. 

В качестве примера сделаем какой-либо файл защищенным от записи. Пусть этот файл называет­ся ТЕХТ.ТХТ. Тогда ваши действия должны быть следующими:

 

A>STAT ТЕХТ.ТХТ $ R/O

ТЕХТ.ТХТ SET TO R/O

А>

 

Разумеется, все эти операции нужно произвести с файлом, имеющимся на диске. В противном случае появится сообщение об ошибке.

 

Команда STAT позволяет временно защитить от записи весь диск. Эта защита сохраняется толь­ко пока диск вставлен в дисковод, например:

 

A>STAT A:-R/O

А>

 

Для снятия защиты необходимо провести «теплый» или «холодный» старт системы.

Разберемся еще с одной интересной функцией команды STAT. Предположим, что вы не хотите, чтобы кто-либо видел некоторые ваши файлы в директории. Команда STAT поможет вам спрятать их и сделать невидимыми. Это также бывает по­лезно, чтобы не выводить каждый раз в оглавлении имена системных файлов. Для того чтобы это сделать, используют операнд $ SYS.

 

A>STAT STAT. СОМ $ SYS

SET TO SYS

А>

 

Теперь по команде DIR вы не увидите в оглавлении файл STAT.COM. Атрибут $ SYS может быть на­значен произвольному числу файлов при использо­вании глобальных символов * и ?.  Для отмены статуса «скрытый» используется атрибут $ DIR, на­пример:

 

  A>STAT $ DIR

  SET TO DIR

  A>

    

     Команда STAT может выдавать информацию о характеристиках дисков. Например, сообщение о двустороннем диске с двойной плотностью запи­си при емкости 1024К на сектор имеет вид:

A>STAT DSK:

     A: DRIVE CHARACTERISTICS

9600: 128BYTE RECORD CAPACITY

1200: KYLOBYTE RECORD CAPACITY

 256: 32BYTE DIRECTORY ENTRIES

 256: CHECKED DIRECTORY ENTRIES

 128: RECORDS/EXTENT

  16: RECORDS/BLOCK

   4: SECTORS/TRACK

   4: RESERVED TRACKS

A>

 

Поясним смысл каждого сообщения.

128 BYTE RECORD CAPACITY указывает число 128-байтных записей, которое может храниться на диске. Запись является единицей измерения объ­ема данных. Сделано это для повышения эффек­тивности обработки файлов.

KILOBYTE RECORD CAPACITY указывает максимальную емкость диска в килобайтах.

32 BYTE DIRECTORY ENTRIES показывает максимальное количество файлов, которые можно хранить на диске. Информация об одном файле, хранящемся на диске, занимает в каталоге про­странство, равное 32 байтам.

CHECKED DIRECTORY ENTRIES — это зна­чение, как правило, совпадает с предыдущим. Его назначение — отслеживание системой смены дисков.

RECORDS/EXTENT определяет максимальное число записей на один экстент, которому соот­ветствует один вход в каталог. Один экстент, как вы помните, занимает 16 К, т. е. 128 записей. От­дельные файлы могут занимать несколько экс­тентов.

RECORDS/BLOCK указывает минимальный объем дисковой памяти, который можно предо­ставить для одного файла. Для определения раз­мера блока нужно умножить этот параметр на дли­ну записи, т. е. на 128байт. В нашем примере легко получить, что блок имеет длину 128байт Х 16 = 2048байт = 2К.

SECTORS/TRACK показывает количество сек­торов на одной дорожке.

RESERVED TRACKS обозначает количество дорожек, зарезервированных для системных нужд. Обычно их две — нулевая и первая. На них хранятся BIOS, BDOS и ССР.

 

 

 

 

Теперь подробней рассмотрим команду PIP, предназначенную для обмена информацией с периферийными устройствами.

 

Для того чтобы пользоваться командой PIP, необходимо иметь на вашем диске в активной областа файл PIP.COM. Мы исходим из того, что файл PIP.COM на вашем диске имеется.

 

Перечислим функции команды PIP: создание копии файла на текущем диске; копирование одно­го файла или группы файлов на другие диски; объ­единение нескольких файлов в один файл; обмен данными между дисками и другими устройствами.

Команда PIP имеет еще много дополнительных возможностей, но здесь мы не будем их рассматри­вать. Интересующихся отошлем к книге «Опера­ционная система СР/М», написанной М. Уэйтом и Дж. Ангермейером. Перевод ее вышел в издатель­стве «Радио и связь» в 1986 г.

Попробуем работать с командой PIP. Сначала наберите PIP и нажмите клавишу ВК, после чего на экране появится:

А>РIР

*

Вы видите, что вместо системного промпта А> по­явился новый промпт *. Это так называемый промпт команды PIP. Его появление означает, что команда загружена и готова к работе. Вспомним теперь, как копировать файлы. Сначала мы должны ука­зать имя копии «приемника» (от англ. destination), затем имя «источника» (от англ. source). Если мы объединяем много файлов в один, их имена пере­числяются одно за другим через запятую. В этом случае на экране должна быть набрана следующая строка:

  * D:FILENAME=S:FILENAME1, FILENAME2, ...

Здесь D: — выходное устройство — может быть не только диском, но и логическим устройством. То же можно сказать и про входное устройство S: . Имена файлов могут быть опущены, однако если идет работа с дисками, хотя бы одно имя файла должно присутствовать. Эту малопонятную фразу не следует рассматривать как нечто непостижи­мое для понимания. Обычно, следуя простой логи­ке, нетрудно сообразить, когда имя файла необ­ходимо указывать, а когда нет.

Исследуем теперь по порядку упомянутые функ­ции команды PIP.

 

Начнем с копирования файлов на одном и том же диске и с диска на диск. Для этого нужно сооб­щить программе имя копируемого файла. До­пустим, что у вас имеется файл PROG.TXT. Если вы хотите создать его копию под именем PROG1.TXT, то в этом случае в ответ на промпт команды PIP вы можете ответить:

 

 

* A:PROG1.TXT=A:PROG.TXT

 

В этом случае необходимо указать имена двух файлов источника  (A:PROG.TXT) и копии (A:PROG1.TXT). Если диск А — текущий, его имя можно не указывать.

 

   Для пользователей, имеющих достаточное коли­чество дисков, возможно копирование с одного диска на другой, формат записи команды тот же, только нужно указать, с какого диска на какой идет копирование. Если ваш файл находится на диске А и этот диск текущий, вы должны набрать команду:

 

 

* B:PROG.TXT=PROG.TXT

 

 

Для изменения имени файла равноправными командами являются:

 

 

* B:PROG.TXT=PROG.TXT

* В:=PROG.TXT

* B:PROG.TXT=A:

 

Вас, наверное, волнует вопрос, как выйти из команды PIP и вернуть на экран промпт СР/М? Очень просто. Нажмите клавишу ВК.

 

Для копирования нескольких файлов можно использовать глобальные символы

? и *.

 

Возможно, у вас возник вопрос: что будет, если файл, который вы указали как выходной, уже суще­ствует на диске? PIP просто запишет на то же место новую информацию. А как быть с защитой? Если файл имел статус R/W, то он просто пере­пишется. Если же статус был R/O, в этом случае PIP сообщит, что файл уже существует и пред­назначен только для чтения. После этого вам нуж­но будет ответить на вопрос, стирать его или нет. Если вы ответите N, то копирования не произой­дет и все останется, как было. Ответив Y, вы сотрете старый файл и запишите на его место новый. Во­обще, полезно внимательно читать то, что сооб­щается вам на экране дисплея.

 

Отметим еще одну важную особенность команды PIP. Она копирует только те файлы, которые можно увидеть в каталоге при помощи команды DIR. Поэтому, если вы присвоили файлу статус SYS, своевременно измените его на DIR при помощи команды STAT.

Пользоваться командой PIP можно двумя спосо­бами. Вы либо сразу указываете в командной строке всю последовательность действий, либо, набрав PIP и нажав клавишу ВК, последова­тельно вводите их. В первом случае после самой команды через пробел вводятся ваши требова­ния, например, копирования трех файлов в один:

A>PIP B:PROG.TXT=A:PROG1.TXT,PROG2.TXT,PROG3.TXT

А>

Обратите внимание, что в этом случае сразу появляется промпт СР/М, а не PIP.

Команда PIP позволяет также выводить содер­жимое файлов на стандартные устройства. Напри­мер, если вы хотите ввести какие-либо данные с консоли в файл TEST.TXT, необходимо ввести команду:

 

 

A>PIP TEST.TXT=CON:

 

После этого программа переходит к процессу об­мена консоли с диском: все, что вы набираете на клавиатуре, записывается на диск. Для оконча­ния этого процесса необходимо ввести символ CTRLZ.

 

 

 

Мы не рассматривали здесь такие программы, как DDT, ASM, LOAD, SAVE и т. д. Эти программы обычно нужны системным программи­стам, работающим на языке Ассемблер.

 

Перейдем теперь к другим программам. Начнем с Бейсика.

 

Бейсик — это язык, который должен обязатель­но входить в состав программного обеспечения любого персонального компьютера. Для нашего компьютера был специально написан интерпрета­тор языка Бейсик, который с точки зрения пользователя не отличается от языков Бейсик фирмы «Microsoft», являющихся стандартными. Бейсик, написанный для ПК«Корвет», является подмножеством языков Бейсик фирмы «Micro­soft» и существует в двух версиях объемами 16 и 24 Кбайт, что оставляет еще большой запас в пределах возможных 96 Кбайт для дальней­шего расширения. Интерпретатор языка находит­ся в машине резидентно, не требуя никаких устройств внешней памяти, и пользователь полу­чает его в свое распоряжение при включении компьютера в сеть.

 

Теперь остановимся на программных средствах, имеющихся в распоряжении пользователя «Кор­вета», на возможностях, предоставляемых опера­ционной системой СР/М-80. Если начать с про­грамм, необходимых массовому пользователю, то можно выделить три типа. Это редактор текста, а также и средство для обработки архивов и табличной информации. В качестве редактора текста в «Корвете» используется отечественный редактор «Супертекст», являющийся аналогом од­ного из наиболее мощных редакторов «Final Word». Настоящая статья была подготовлена с помощью редактора «Супертекст» на «Корвете».

 

Для обработки архивов можно использовать широко известную базу данных dBase II, а для работы с таблицами также очень популярную программу Multiplan фирмы «Microsoft». Что ка­сается системных программных средств, выбор их чрезвычайно широк. Существуют различные ассемблеры, перемещающие загрузчики, отладчики, пакеты утилит. Имеются компиляторы с таких языков высокого уровня, как фортран, Паскаль, Си, Ада, форт, Лисп, ПЛ/М и других. Основным языком для разработки прикладных программ для «Корвета» является «Си». В настоящее время разработана библиотека графических процедур для языка «Си», которая делает в полной мере доступными программисту преимущества аппарат­ных средств «Корвета». Например, одна из функ­ций библиотеки реализует так называемые спрайты (это маленькие объекты типа стрелок или игровых персонажей), получение которых без спе­циальных заказных БИС считается невозможным. В нашем компьютере реализованы спрайты со скоростью перемещения до 1—2 мс на один шаг.

 

В заключение скажем несколько слов о том, кто занимается производством нашего компьюте­ра. Основным производителем является Бакинское производственное объединение «Радиостроение». В Москве производством «Корвета» заняты опыт­но-экспериментальное производство Московского экспериментально-вычислительного центра ГКВТИ «ЭЛЕКС» и кооператив «ЭЛИН».

С. АХМАНОВ, Н. РОЙ, .А. СКУРИХИН

 

 

| КОМАНДА STAT | КОМАНДА PIP | ПРОЧЕЕ ПО НА ПК «КОРВЕТ»|

 

 

Данная статья является последней из серии статей, опубликованных в журнале «Радио» в 1989г., по ПК «Корвет». Первоначальные статьи вы можете найти в  журнале «Радио» №№1, 3, 6, 8, 10 - 1989г.,  либо на сайте “Russian 8bit Computers” – http://www.rkgames.newmail.ru,  в разделе информации по ПК «Корвет».

Сканирование и обработка:  А. Болтаевский, 06.07.2000