Что такое переносимая программа информатика 7 класс кратко

Обновлено: 05.07.2024

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

  • изолирование частей кода, которые зависят от используемого аппаратного обеспечения или операционной системы,
  • знание свойств языка C, которые зависят от реализации и отказ от их использования, либо принятие этого во внимание,
  • знание диапазонов различных значений, которые могут храниться в определённых типах, и правильная декларация объектов,
  • знание специальных возможностей доступных на некоторых системах, которые могут быть полезными.

Ни один программист не может всерьёз ожидать, что с первого раза напишет большую переносимую программу. Первый перенос программы займёт значительный период времени, но в конце получится более переносимая программа, чем до этого. Обычно каждый следующий перенос программы происходит легче и занимает меньше времени. Конечно, если новая целевая система имеет новую концепцию, которая не учитывалась при первоначальной разработке программы (другой пользовательский интерфейс), то перенос неизбежно затянется.

Изолирование системно-зависимого кода

Наибольшей проблемой при попытке переноса программы является нахождение всех мест в коде, где делаются предположения об аппаратном обеспечении или операционной системе, что может оказаться некорректным на новой системе. Многие из этих отличий скрыты в библиотечных подпрограммах, но, тем не менее, они могут создать проблемы.

Рассмотри, например, задачу различения букв и остальных символов. Библиотека предоставляет функцию isalpha , которая получает символьный аргумент и возвращает не нуль, если это — буква, и — 0 в противном случае. Предположим, что программист пишущий компилятор языка FORTRAN, хочет узнать, начинается ли переменная с буквы в диапазоне от 'I' до 'N' для того, чтобы определить, будет ли она целой. Он может написать

Если программа разрабатывается на машине, которая использует символьный набор ASCII, то всё будет отлично, так как буквы верхнего регистра имеют 26 последовательных значений. Но при переносе программы на машину, которая использует символьный набор EBCDIC, могут возникнуть проблемы, потому что между буквами 'I' и 'N' находятся 7 небукв, включая '>' . Поэтому имя >VAR будет считаться правильным именем целой переменной, что, естественно, не так. Для решения этой проблемы программист должен написать

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

Рассмотри пользовательский интерфейс программы. Если программа просто выводит строки на текстовый терминал и также получает данные, то пользовательский интерфейс при переносе, скорее всего, менять не придётся. Но предположим, что программа имеет развитый пользовательский интерфейс, который включает в себя полноэкранное представление данных, окна, меню, а также использование для ввода клавиатуры и мыши. При отсутствии стандартов на подобный интерфейс не удивительно, что каждая система потребует своего набора функций. Здесь переносимость программы может сравниться с искусством.

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

Другие области, которые могут быть системно-зависимыми, включают:

  • Свойства и возможности устройств, включая принтеры. Некоторые принтеры поддерживают многочисленные шрифты, расширенные и сжатые символы, подчёркивание, графику и т.д. Другие поддерживают относительно простой текстовый вывод.
  • Доступ к памяти вне нормально адресуемого пространства. Хорошим примером могут послужить процессоры семейства Intel 80x86. При использовании 16-битного компилятора Watcom C/16 адресуемая память — 1024 килобайта, но 16-битный указатель может адресовать только 64 килобайта. Необходимо предпринять специальные шаги во время компиляции, чтобы иметь возможность адресовать всю доступную память. Многие компиляторы для процессора 8086, включая Watcom C/16 и C/32, вводят новые ключевые слова для описания указателей, которые могут адресовать больше, чем 16-битные.
  • Код, который для быстродействия полностью написан на языке ассемблера. С улучшением качества генерации кода, необходимость в коде на ассемблере уменьшается.
  • Код, который использует некоторые особенности системы. Например, многие системы предоставляют возможность для временного выхода в систему и возврата обратно в программу. В разных системах это делается по-разному, и потребности программы тоже часто меняются.
  • Обработка параметров командной строки. Так как C разбивает список параметров на строки, то интерпретация этих строк различается на разных системах. Программа по возможности должна придерживаться соглашений системы, на которой она будет работать.
  • Действия при запуске программы. Здесь может происходить резервирование памяти, инициализацию устройств и т.д.

Остерегайтесь длинных имён с внешней связью

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

Если разработчику понадобится перенести программу с большим количеством имён, которые не уникальны при ограничениях накладываемых целевой системой разработки, то можно использовать препроцессор для получения уникальных имён для всех объектов. Помните, что этот метод может серьёзно ухудшить возможности символьной отладки, предоставляемые системой разработки.

Обход реализационно-зависимого поведения

Некоторые стороны генерации кода компилятором C зависят от поведения конкретного компилятора, который используется. По возможности, переносимая программа должна этого избегать, и принимать во внимание, если без этого не обойтись. Можно использовать макро для обхода этих проблем.

Важным свойством, которое различается в разных системах, является число символов, распознаваемых системой в именах внешних объектов и функций. Стандарт гарантирует, что система должна распознавать как минимум 6 символов, хотя в будущем стандарты могут снять или расширить это ограничение. Большинство систем допускают более, чем 6 символов, но некоторые распознают только 8. Для истинной переносимости функция или объект с внешней связью должны иметь уникальными первые шесть символов. Это может потребовать изобретательности в придумывании имён, но, разработав систему названий, можно много сделать и в этих границах. Цель, конечно, в том, чтобы имена объектов оставались понятны. Если все системы, которые будут использоваться, имеют меньшие ограничения, то программист может оставить в прошлом предел из шести символов. А, если перенос будет делаться на систему с шестисимвольным пределом, то придётся сделать некоторые изменения.

Для разрешения этой проблемы можно использовать макро для отображения истинных имён функций в сокращённые, которые будут умещаться в 6 символов. Эта техника может плохо сказаться при отладке, так как многие функции и имена объектов не будут иметь то же имя, что и в исходном коде.

Другое реализационно-зависимое свойство связано с типом char . Стандарт не навязывает знаковость этого типа. Программа, которая использует объект типа char , чьи значения должны интерпретироваться либо как знаковые, либо как беззнаковые, должна точно декларировать тип такого объекта.

Диапазоны типов

Диапазон объекта типа int не указан в стандарте, сказано только, что он должен быть не менее чем от -32767 до 32767. Если объект должен содержать целое значение, то необходимо позаботится о том, будет ли этот диапазон доступен на всех системах. Если объект — счётчик, который никогда не выходит за границы 0 и 255, то диапазон будет достаточным. Однако для большего диапазона может понадобится long int .

То же самое относится к объектам типа float . Имеет смысл декларировать их как double .

Поведение при конвертировании чисел с плавающей точкой в целые, округление происходит по-разному на разных системах. Если программе важно знать как оно происходит, она должна обращаться к макро FLT_ROUNDS (определённого в заголовочном файле ), чьё значение описывает способ округления.

Специальные возможности

Использование препроцессора для облегчения переносимости

Например, рассмотрим макро

Они описывают набор операционных систем ( OS ), аппаратного обеспечения ( HW ) и процессоров ( PR ), которые вместе описывают компьютер и его операционную систему. Если программа будет переносится на IBM 370 работающий под управлением операционной системы MVS, то ей придётся включить заголовочный файл, в котором определяются эти макро и декларировать следующие:

Следующий код будет включён только, если программа компилируется для IBM 370, работающий под MVS.

В других случаях, код может компилироваться только в зависимости от аппаратного обеспечения, не обращая внимания на операционную систему, и наоборот.

Эта техника хорошо работает, если используется в умеренных количествах. Если же модуль переполнен такими директивами, то он становится трудночитаемым и кандидатом на то, что будет полностью переписан для каждой системы.

Переносимое приложение (англ. portable application, portable app ) — программное обеспечение, которое для своего запуска не требует процедуры инсталляции на жесткий диск компьютера, и может полностью храниться на съемных носителях информации, таких как CD-ROM, USB flash drive, флэш-картах и даже на дискете, что позволяет использовать данное ПО на многих компьютерах. Такое приложение в идеале может быть настроено так, чтобы считывать свои конфигурационные настройки во время запуска из того же места, где хранятся его собственные программные файлы.

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

Некоторые разработчики поставляют переносимые версии своих программных продуктов или продуктов с открытым исходным кодом. Для создания переносимого ПО, исходный код которого недоступен, существуют коммерческие решения, например VMware ThinApp.

Примеры переносимых приложений

Ссылки

Wikimedia Foundation . 2010 .

Полезное

Смотреть что такое "Переносимое приложение" в других словарях:

VMware ThinApp — Разработчик Jitit Inc. (до 15 января 2008 года[1]), VMware (по сей день) Операционная система Microsoft Windows: NT 4.0, 2000, XP (x86, x64), Vista (x86, x64), Server 2003, Server 2008 (x64), Server 2008 R2 (x64) и … Википедия

U3 — У этого термина существуют и другие значения, см. U3 (значения). В данной статье или разделе имеется список источников и … Википедия

Netpbm — Тип пакет графических программ и библиотека Разработчик Bryan Henderson Написана на C, Perl, Unix Shell Операционная система Linux и др. UNIX подобные, Windows Первый выпуск май 2000 … Википедия

АРИСТОТЕЛЬ — Стагирит [греч. ̓Αριστοτέλης Σταγειρίτης], философ, ученый энциклопедист. Биографические сведения Род. в 385/84 г. до Р. Х. в греч. г. Стагира на вост. побережье п ова Халкидика в семье Никомаха, врача из рода, возводимого к богу врачевания… … Православная энциклопедия

Программное обеспечение – это совокупность всех программ, предназначенных для выполнения на компьютере.

Операционная система – это комплекс программ, обеспечивающих совместное функционирование всех устройств компьютера и предоставляющих пользователю доступ к ресурсам компьютера.

Аппаратный интерфейс – средства, обеспечивающие взаимодействие между устройствами компьютера.

Пользовательский интерфейс – средства, обеспечивающие взаимодействие человека и компьютера.

Загрузка компьютера – это последовательная загрузка программ операционной системы из долговременной памяти в оперативную память компьютера.

Сервисные программы – это программы-архиваторы, антивирусные программы, коммуникационные программы и другие.

Прикладными программами или приложениями называют программы, с помощью которых пользователь может работать с разными видами информации, не прибегая к программированию.

Комплекс программных средств, предназначенных для разработки компьютерных программ на языке программирования, называют системой программирования.

Программирование ‑ процесс создания программ, разработки всех типов программного обеспечения.

Основная литература:

  1. Босова Л. Л. Информатика: 7 класс. // Босова Л. Л., Босова А. Ю. – М.: БИНОМ, 2017. – 226 с.

Дополнительная литература:

  1. Босова Л. Л. Информатика: 7–9 классы. Методическое пособие. // Босова Л. Л., Босова А. Ю., Анатольев А. В., Аквилянов Н.А. – М.: БИНОМ, 2019. – 512 с.
  2. Босова Л. Л. Информатика. Рабочая тетрадь для 7 класса. Ч 1. // Босова Л. Л., Босова А. Ю. – М.: БИНОМ, 2019. – 160 с.
  3. 3. Босова Л. Л. Информатика. Рабочая тетрадь для 7 класса. Ч 2. // Босова Л. Л., Босова А. Ю. – М.: БИНОМ, 2019. – 160 с.
  4. Гейн А. Г. Информатика: 7 класс. // Гейн А. Г., Юнерман Н. А., Гейн А.А. – М.: Просвещение, 2012. – 198 с.

Теоретический материал для самостоятельного изучения

Что же такое компьютерная программа? Это описание на понятном компьютеру языке последовательности действий, которые нужно выполнить над данными для решения конкретной задачи.

Без программного обеспечения компьютер работать не сможет. Поэтому компьютер рассматривают как систему взаимосвязанных частей: аппаратного обеспечения и программного обеспечения. Программным обеспечением компьютера называют совокупность всех программ, предназначенных для выполнения различных задач.

В настоящее время насчитывается огромное количество программ, они непрерывно развиваются, совершенствуются, на смену одним программам приходят другие.

Все программы можно разделить на три группы: системное программное обеспечение, прикладное программное обеспечение и системы программирования.

Системное программное обеспечение включает в себя операционную систему и сервисные программы.

Главной частью программного обеспечения является операционная система. Без неё компьютер работать не сможет.

Самыми распространёнными на сегодняшний день считаются операционные системы Windows, Linux, Mac OS.

Операционная система обеспечивает совместное функционирование всех устройств компьютера и предоставляет пользователю доступ к ресурсам компьютера. Средства, обеспечивающие взаимосвязь между объектами операционной системы, называют интерфейсом.

Аппаратный интерфейс обеспечивает взаимодействие между устройствами компьютера. Он содержит программы – драйверы, которые отвечают за работу подключённых к компьютеру устройств, например, принтера, монитора, клавиатуры и других.

Пользовательский интерфейс содержат программы, которые поддерживают диалог пользователя с компьютером, то есть, запуск программ, печать текста на принтере и так далее.

Загрузка операционной системы из долговременной памяти в оперативную память компьютера происходит поэтапно. Сначала загрузчик BIOS из постоянного запоминающего устройства производит тестирование и настройку всех аппаратных средств. Этот процесс виден на экране монитора. Если всё оборудование функционирует нормально, происходит поиск начального загрузчика операционной системы на внешнем носителе, который является системным. Например, на жёстком диске. После обнаружения, программа-загрузчик загружается в оперативную память. После этого операционная система начинает функционировать.

К сервисным программам относятся различные программы, которые обслуживают диски: проверяют их, восстанавливают, очищают. А также программы-архиваторы, программы для борьбы с компьютерными вирусами, коммуникационные программы и многие другие.

Архиваторы – это программы, которые обеспечивают уменьшение объёма хранимой информации.

Антивирусные программы защищают компьютер от вирусов, обнаруживают и удаляют компьютерные вирусы.

Коммуникационные программы необходимы для обеспечения доступа к сети Интернет.

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

К приложениям общего назначения относятся: текстовые редакторы, электронные таблицы, графические редакторы, редакторы презентаций, мультимедийные проигрыватели, системы управления базами данных.

К программам специального назначения можно отнести: издательские системы, бухгалтерские программы, системы проектирования, программы компьютерного моделирования, математические пакеты, геоинформационные системы, медицинские экспертные системы.

Комплекс программных средств, предназначенных для разработки компьютерных программ на языке программирования, называют системой программирования. Такие программы разрабатывают программисты. Программирование является процессом создания программ, то есть разработки всех типов программного обеспечения.

Для записи программ используют специальные языки – языки программирования. Сейчас насчитывается несколько тысяч таких языков.

Все программы можно разделить ещё на две большие группы по их правовому статусу: программное обеспечение, которое является частной собственностью авторов или правообладателей, и свободное программное обеспечение.

Программы, входящие в первую группу, также можно разделить на: коммерческие, условно бесплатные и свободно распространяемые.

Свободное программное обеспечение даёт возможность пользователям иметь доступ к исходным кодам программ.

Материал для углублённого изучения темы.

Операционная система Linux.

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

История этой операционной системы началась в 1983 году, тогда Linux ещё не носила своего современного названия, работать над ней начал Ричард Столлман. Примерно через восемь лет он уже практически закончил разработку всех системных программ входящих в её состав.

В 90-ые годы к работе над системой присоединился молодой хакер и программист Линус Торвальдс, он и разработал ядро для операционной системы. И, как видно из имени этого человека, своё название система получила именно в честь него. Кстати и пингвин, ставший эмблемой системы, был до этого личным талисманом Линуса, а вот сделать этого пингвина символом операционной системы придумала жена программиста – Туве.


Широкое распространение система получила после того, как сообщество программистов подхватило основную идею Linux и стало вкладывать свои усилия в развитие проекта.

Довольно часто к операционной системе Linux относят программы, которые дополняют эту OС, и прикладные программы, которые делают её полноценной многофункциональной операционной средой.

Бесплатность. Установив Linux, вы получите набор из тысяч бесплатных программ. Хоть они и не столь привычны как Windows-программы, но абсолютно функциональны.

Надёжность. Корректная работа аппаратной части ПК, позволит Linux работать годы без перезагрузки и зависаний. А кнопка Reset вообще никогда не понадобится.

Безопасность. В Linux практически нет вирусов. Само построение операционной системы исключает работу вредоносных программ.

На данный момент вокруг ОС Linux сформировалось огромное сообщество программистов, которые постоянно совершенствуют систему. Они разрабатывают новые версии и разновидности данной ОС, пишут самые разнообразные программы, работающие под Linux.

Разбор решения заданий тренировочного модуля.

№1.Тип задания: подстановка элементов в пропуски в таблице.

Предложите имена известных вам программ, открывающие файлы со следующими расширениями:

Расширение doc имеют только текстовые редакторы, например, MSWord; расширение bmp у графических редакторов, например, Paint. Программы-архиваторы имеют расширение zip, поэтому можно выбрать, например, программу WinZip, ну, а расширение txt есть только у программы Блокнот.

В общем, каждый раз, когда мы хотим использовать программу на нашем компьютере, мы должны загрузить и установить ее на свой компьютер, чтобы использовать ее. Это заставляет нас постоянно зависеть от Интернета, а иногда даже заставляет нас зависеть от разрешений администратора, чтобы иметь возможность выполнять его. Но во многих случаях портативные версии многих программ, которые предоставляют множество преимуществ.

Переносимая программа - это программа, которая по умолчанию имеет все необходимое для работы без необходимости установки, может работать на любом ПК, сохраняя все данные в собственной папке программы. Поэтому его использование может быть очень интересным. Мы можем найти портативные программы всех видов, такие в качестве веб-браузеров, антивирусов, фоторедакторов, менеджеров паролей, мультимедийных плееров и т. д.

По этой причине сегодня мы рассмотрим четыре основных причины, которые помогут вам решить использовать портативную программу.

Для работы не требуется установка

Основная причина того, что программы являются переносимыми, заключается в том, что они не нуждаются в установке на нашем жестком диске для работы. Для его использования потребуется только его скачать и запустить . Это может быть чрезвычайно интересно, если нам нужно работать с защищенного компьютера, поскольку для его использования не требуются права администратора для установки приложений, поскольку портативные устройства отлично работают без установки.

Их можно запустить с флешки

Еще одна веская причина использовать портативные программы - это именно их переносимость . Это приводит к тому, что мы можем сохраните их на любом внешнее запоминающее устройство. Будь то на флеш-накопителе, карте памяти, внешнем жестком диске, компакт-диске и т. Д., А также запускать их непосредственно из одного хранилища. Таким образом, мы всегда можем носить программы с собой и запускать их на любом Windows ПК, без необходимости тратить время на их установку и во многих случаях в зависимости от подключения к Интернету.

Pendrive и карта памяти

Вы экономите место на жестком диске

Они не изменяют реестр Windows

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

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

Ежедневно миллионы людей по всему миру используют их для различных целей, но не все знают определение этого термина. Если вам это интересно, то данная статья несомненно поможет вам расширить свои познания в IT сфере.

Программа - что это такое? Определение в информатике

Прошлый материал был посвящен тому, что такое программное обеспечение, сейчас вы узнаете определение программы в информатике, как они работают и что из себя представляют.

Что такое программа

Программа (Program) — это набор команд, инструкций в виде кода, который запакован в исполняемый файла/ы. Создается для выполнения определенный функций и задач на определенном устройстве и операционной системе. Это может быть текстовый просмотрщик, видео-редактор, музыкальный плеер, браузер и т.д.

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


Если вы учитесь в университете на программиста, то наверняка знаете, что компьютерной программой называется даже простой код, который выводит на экран текст — Hello World!

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

Интересно! Любое ПО создается под целевую систему: Windows, Mac OS, IOS, Android или другую, и под ее архитектуру. Поэтому для каждой ОС необходим свой софт, который будет на ней работать.

Как создаются программы

Программы создаются в специальном ПО для их создания: это ПО для работы с кодом, его компиляцией и отладки. Непосредственно код может быть написан на разных языках программирования, которые разделяются на два типа:

  • Низкоуровневый — Ассемблер и другое ПО, которое максимально приближены к написанию кода на машинном языке. Здесь для определенных действий придется в коде описывать все возможные действия, как, когда, что дальше и т.д. Кодирование занимает довольно много времени.
  • Высокоуровневый — C++, Ruby, Java и другие. В них написание кода уже больше похоже на человеческий язык. Действия описываются в функциях, количество кода намного меньше и скорость разработки соответственно быстрее. В данном случае программировать намного легче.


Языков программирования огромное множество, любой может подходить для определенных задач. Для каждой операционной системы, будь то Windows, Mac OS, Linux, IOS или Android существует свой язык программирования. И если софт написан под определенную систему, ее архитектуру, то на другой ОС он просто не запустится.

Виды программ

Видов не так уж много, но основной перечень состоит всего из трех типов. Их уже можно классифицировать дальше.

Системное ПО — это операционная система, драйверы, системные утилиты и другой софт встроенный в операционную систему.

Прикладное ПО — мессенджеры, офис, плееры, различные просмотрщики. Т.е. софт для выполнения повседневных задач, которым вы так часто пользуетесь

Инструментальное ПО — софт, предназначенный для разработки, отладки другого ПО. Т.е. для создания программного обеспечения.

Также, можно добавит еще один тип — вредоносное ПО, но это уже ближе к прикладному.

Интересно! Дополнительно рекомендую прочитать, про типы софта и его классификацию в следующем материале — виды программного обеспечения.

В заключение

Теперь вы знаете больше о том, что так часто используете на своих компьютерах и гаджетах. Надеюсь вам было интересно и это расширило ваши познания в компьютерной сфере.

Читайте также: