Здесь -c опция, указывающая (компилятору) что выходным файлом является объектный файл.
Далее словом "линкование" будем обозначать объединение нескольких объектных программ (объектных модулей) с целью получения единой загрузочной программы. Объектные файлы можно прилинковывать к загрузочным модулям компилируемых программ или помещать в библиотеки.
Если необходимо объединить несколько объектных модулей исходных программ, и к тому же присоединить к ним еще и ранее созданные объектные программы, для получения единого загрузочного модуля - нужно записать:
px cc -o hello.px hello1.c hello2.c he1.o he2.o
Если необходимо присоединение к hello.px библиотечных программ, например из библиотеки виртуальных топологий VT, то:
px cc -o hello.px -l VT hello.c
Если необходимо присоединить к hello.px еще и программы из собственной библиотеки то:
px cc -o hello.px -l VT -L/$HOME/lib -l NM hello.c
Здесь NM -имя собственной библиотеки, которая стоит в пользовательской директории lib. В этой директории библиотека стоит с именем libNM.a. HOME -обозначает системную переменную, которая создается при заведении имени пользователя в системе. Например может быть: HOME = /local/home/imyap (imyap - имя пользователя. HOME смотрится по команде setnv). Знак $ -указывает, что HOME системная переменная; опция -L указывает, что /$HOME/lib - есть маршрут к библиотеке NM.
Некоторое отступление.
Для формирования собственной библиотеки MYLIB нужно использовать следующий оператор:
px ar rv MYLIB hello1.o hello2.o ... hellok.o
Для формирования заголовка библиотеки записывается оператор (оператор обязателен после каждого пополнения библиотеки):
px runlib MYLIB
В операторе запуска программ пользователь сам указывает номера каналов связи с управляющей ЭВМ и размер подсистемы (размер решетки).
px run -fk N M hello.px
Здесь k номер канала (link) связи с управляющей ЭВМ; k = 0,1,2,3. N,M - размер подсистемы, которая задается в виде решетки: 1 1 (N = 1, M = 1), 1 2, 2 1, 2 4, 4 2, 1 3, 3 1, и т.д.
В кабинете 1 (см. рис.1) можно запускать через k = 0; в кабинете 2 - через k = 2. Во всей системе можно запускать только через k = 0.
Программа hello.px загружается в указанную подсистему путем копирования в каждый процессор, после чего копии запускаются. Если подсистема занята другими задачами, то оператор не выполняется и об этом выдается сообщение.
ПРИМЕР ЗАДАЧИ
Программа hello.c
#include<stdio.h>
int main(void)
{ printf("hello, world\n");
return (0);
}
Компиляция: px cc -o hello.px hello.c
Запуск: px run -f0 2 2 hello.px
Результат: hello, world
hello, world
hello, world
hello, world
Результат выводится на экран монитора. (Далее вместо -‘экран монитора’ будем писать для краткости -‘экран’).
В данном разделе приводится краткий перечень команд операционной системы, необходимых для работы с файловой системой и некоторые другие команды, чтобы дополнить минимальный перечень инструкций, необходимых для работы на вычислительной системе PowerXplorer.
Команды для работы с файловой системой.
pwd - выводит на экран полное имя текущего каталога, начиная с корневого каталога системы. Она полезна, когда вы точно не знаете имя текущего каталога и желаете получить информацию для перехода в другой каталог.
ls - выводит на экран в алфавитном порядке имена файлов и подкаталогов непосредственно содержащихся в текущем каталоге. В выведенном списке, в данном случае, имена файлов и каталогов не различимы. Чтобы получить более полную информацию о файлах и каталогах, нужно употребить эту команду с опцией: -l.
ls - l - выводит о файле или каталоге следующую информацию, например: drwxrwxrwx 2 dick 32 Dec 30 18:54 A. Здесь d - указывает, что это каталог; rwxrwxrwx - сообщает о правах доступа; 2 - сообщает о количестве связей; имя dick сообщает о владельце файла; 32 - указывает размер файла в символах; Dec 30 18:54 - время последнего изменения файла; A - имя каталога, а если вместо d стоит «-», то А имя файла.
сd «полное имя каталога» - осуществляет переход в каталог с указанным именем (т.е. /usr/dick/A приводит к переходу в каталог А). Если известно местоположение в файловой системе, можно задавать только имя относительно текущего каталога. сd.. - возвращает на один уровень вверх по дереву каталога.
mkdir «имя каталога1» «имя каталога2» ... - создает новые каталоги.
rmdir «имя каталога1» «имя каталога2» ... - удаляет каталоги.
Команды для работы с файлами.
joe [«имя файла»]- запускает редактор, с помощью которого можно
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.