Освой компьютер
Этой особенностью системы иногда
пользуются некоторые программы, используя ее для внутреннего планирования
времени процессора. Однако при установке известного пакета Executive,
который с целью улучшения работы планировщика разделения времени начинает
манипулировать приоритетами процессов, вполне может наступить такая
ситуация, что приоритеты этих двух процессов \"поменяются местами\", и
работоспособность программы, основанной на этой особенности системы,
нарушится. Executive имеет средства выключения заданных процессов из
списка динамических приоритетов, но лучшим подходом все-же следует считать
просто отказ от применения подобных трюков. Что делать? Теперь, практически, самое главное. Вы вполне серьзно решили писать
что-то свое. Следует сразу определиться: как Вы собираетесь это писать,
и что это будет... Давно известно, что программы на Амиге делятся на две
большие группы: нечто красивое и, как правило, бесполезное практически
(demo и прочее) и функционально завершенные прикладные и системные программы,
ориентированные на работу под операционкой и использующие, в основном, ее
возможности.
Как Вы, наверное, уже заметили, наши симпатии, в основном, на стороне
\"дружественных к системе\" (\"system-friendly\") программ. С другой стороны,
никто не мешает \"скрестить коня и трепетную лань\" - писать программы так,
чтобы они предельно корректно работали под ОС и использовали возможности машины
\"на всю катушку\"... Рассмотрим по пунктам, что же для этого нужно: 1) По возможности избегайте прямого программирования \"железа\". Там,
где его можно избежать полностью, лучше так и сделать; там же, где
использование железа напрямую резко увеличивает производительность работы
- лучше сделать выбор. Например, как это сделано в известной программе
CygnusED: скроллинг экрана можно делать средствами программы или
средствами системы. Первый вариант быстрее (быстрее он, правда, только на
чипсете), но только второй вариант делает возможной эксплуатацию этой
программы на видеокартах и открытие окошек на ее экране.
AMIGA: ПРОГРАММИРОВАНИЕ НА АССЕМБЛЕРЕ.
|