Советы по Delphi



         

Предел сегмента данных в 64K - часть 2


/p>

Примечание: данные можно описать и таким способом:

vardata : array [1..10000] of arrptr;

  • В: Есть ли недостатки у данного решения?
  • О: Да! Это медленно и немного опасно.
  • В: Опасность заключается в использовании Кучи?
  • О: Да!

    Всегда распределяйте память Кучи прежде, чем вы решитесь ее использовать. В противном случае вы можете получить одну из следующих ошибок системы: при использовании программ, разработанных на C - "General Protection Violation" (Общее нарушение защиты), разработанных с использованием других инструментов и языков - "Protected Mode Exception #13" (Исключительная ситуация защищенного режима) или иные. В режиме реального времени программа обычно не вызывает такую ошибку, она просто молча перезапишет другие данные, или то, что попадется под руку - саму себя, другие программы, DOS, все, что может оказаться в памяти.
    Это может повлечь за собой все что угодно, вплоть до холодной перезагрузки с выключением PC от сети, но может и не иметь никакого эффекта. В особо крайнем случае возможна перезапись данных на жестком диске. Но это в теории и вряд ли возможно.

  • В: Как я могу использовать XMS память?
  • О: По адресу расположен модуль, который позволяет использовать XMS.
  • В: Как насчет других компиляторов Pascal?
  • О: Проверьте FPK-Pascal и GNU-Pascal. Они оба являются свободно распространяемыми 32-битными компиляторами Pascal для DOS и более-менее Borland-совместимые. Если вам необходим компилятор Pascal для Linux или OS/2, то два вышеупомянутых компилятора доступны также и для этих операционных систем, плюс некоторые другие, смотри .
  • В: Это звучит так, будто автор не любит Borland Pascal, не правда ли?
  • О: Неправда, я *люблю* их и пользуюсь ими все время, но я *не люблю*, когда Borland не предлагает их новые версии.
  • В: Как насчет Delphi?
  • О: Не доступен для DOS,
    Не доступен для Linux,
    Не доступен для OS/2.
  • [000147]


    Содержание  Назад  Вперед