Поиск

Полнотекстовый поиск:
Где искать:
везде
только в названии
только в тексте
Выводить:
описание
слова в тексте
только заголовок

Рекомендуем ознакомиться

Информатика->Реферат
Для записи изображений требуются достаточно большие объемы памяти, часто в единицы и даже десятки Мегабайт – а, это может оказаться недостижимым, если...полностью>>
Информатика->Реферат
Термин мультимедиа также, зачастую, используется для обозначения носителей информации, позволяющих хранить значительные объемы данных и обеспечивать д...полностью>>
Информатика->Реферат
Связь между языком, на котором мы думаем/программируем, и задачами и решениями, которые мы можем представлять в своем воображении, очень близка. По эт...полностью>>
Информатика->Реферат
Персональный компьютер (ПК) представляет собой универсальную микропроцессорную систему. Основной микросхемой компьютера, в которой происходят все вычи...полностью>>

Главная > Лекция >Информатика

Сохрани ссылку в одной из сетей:

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

Например, стандартный драйвер компилятора в системах семействаUnix - программа cc - определяет тип файла именно порасширению. Командная строка

Example:

cc main.C c-code.c asm-code.s obj-code.o\ library.a -o program

будет интерпретироваться следующим образом:

main.C:

текст на языке C++. Его нужно пропуститьчерез препроцессор и откомпилировать компилятором C++,а затем передать то, что получится, редактору связей.Большинство компиляторов в Unix генерируют кодна ассемблере, то есть вывод компилятора еще нужно пропуститьчерез ассемблер.

c-code.c:

текст на языке C. Он обрабатывается,так же, как и C++-программа, только вместокомпилятора C++ используется обычный компилятор C.

asm-code.s:

программа на языке ассемблера. Ее нужнообработать ассемблером и получить объектный модуль.

obj-code.o:

объектный модуль, который непосредственноможно передавать редактору связей.

library.a:

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

Многие ОС, разработанные в 70-е гг., такие как RT-11,RSX-11, VAX/VMS, CP/M, навязывают программистуразделение имени на собственно имя и расширение, интерпретируя точкув имени файла как знак препинания. В таких системах имя может содержатьтолько одну точку и соответственно иметь только одно расширение.Напротив, в ОС нового поколения - OS/2, Windows NTи даже в Windows 95 - реализована поддержка имен файловсвободного формата, которые могут иметь несколько каскадированныхрасширений, как и в Unix.

Однако никакие средства операционной системы не могут навязать прикладнымпрограммам правил выбора расширения для файлов данных. Это приводит кнеприятным коллизиям. Например, почти все текстовые процессоры отЛексикон до Word 7.0 включительно используютрасширение файла .doc (сокращение от document),хотя форматы файлов у различных процессоров и даже у разных версийодного процессора сильно различаются.

Другая проблема связана с исполняемыми загрузочными модулями. Обычносистема использует определенное расширение для исполняемых файлов.Так, VMS, MS/DR DOS, OS/2, MS Windowsи Windows NT используют расширение .exe: сокращение отexecutable (исполняемый).Однако по мере развития системы формат загрузочного модуля может изменяться.Так, например, OS/2 v3.0 Warp поддерживает по крайней мерепять различных форматов загрузочных модулей.

  1. 16-разрядные сегментированные загрузочные модули: форматOS/2 1.x.

  2. 32-разрядные загрузочные модули, использующие``плоскую'' (flat) модель памяти: формат OS/2 2.x.

  3. 32-разрядные модули нового формата, использующие упаковку кодаи данных: формат OS/2 3.x.

  4. DOS-овские .exe и .com модули.

  5. Загрузочные модули MS Windows.

Для исполнения последних двух типов программ OS/2 создаетзадачу, работающую в режиме совместимости с 8086.Эта задача запускает копию ядра DOS и, если этонеобходимо, копию MS Windows, которые уже выполняют загрузкупрограммы. Загрузочные модули всех трех ``родных'' форматов загружаютсясистемой непосредственно.

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

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

Разработчики Unix столкнулись с этой проблемой еще в 70 гг.В качестве решения они предложили использоватьмагические числа (magic number) - соглашение о том, чтофайлы определенного формата содержат в начале определенный байт илипоследовательность байтов. Первоначально это были численные коды;файл /etc/magic содержал коды, соответствующие известнымтипам файлов. Позднее в качестве магических чисел стали использоватьсядлинные текстовые строки. Так, например, изображения в форматеCompuserve GIF 87a должны начинаться с символов GIF87a.

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

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

Example:

GIF87a -- это очень плохой форматхранения изображений.

будет воспринят некоторыми программами как изображение в форматеCompuserve GIF 87a, каковым он, безусловно, не является.

Пытаясь как-то решить проблему идентификации типа файла, разработчикиMacintoch отказались как от расширений, так и от магическихчисел. В MacOS каждый файл состоит из двух частей иливетвей (forks): ветви данных (data fork) и ветвиресурсов (resource fork). Кроме идентификатора типа файла,ветвь ресурсов хранит информацию о:

  • иконке, связанной с этим файлом;

  • расположении иконки в открытой папке (folder);

  • программе, которую нужно запустить при ``открытии'' этого файла.

Файловая система

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

В широком смысле понятие "файловая система" включает:

  • совокупность всех файлов на диске,

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

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

23.

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

Класификация

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

Программное обеспечение (softwаrе) на данный момент составляет сотни тысяч программ, которые предназначены для обработки самой разнообразной информация с самыми различными целями. В зависимости от того, какие задачи выполняет то или иное программное обеспечение можно разделять все программное обеспечение на несколько групп:

  • Базовое программное обеспечение.

  • Трансляторы.

  • Языки программирования.

  • Инструментальные средства.

  • Прикладное программное обеспечение.

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

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

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

Операционных систем и оболочек операционных систем довольно много, они различаются интерфейсом, набором возможностей, способами защиты от вирусов (программ, которые портят другие программы), способами управления ресурсами памяти, периферийными устройствами. Различия ОС обоснованы обычно свойствами и назначением самих ЭВМ, спецификой их использования. Можно назвать наиболее распространенные операционные системы, это: MS DOS, UNIX, Windows 95 и далее, WindowsNT и др.

Оболочки операционных систем дают возможность вводить команды операционных систем в более удобном для человека виде, с помощью выбора команд в предложенном оболочкой меню. Из наиболее распространенных оболочек можно назвать оболочки Norton Commander, DOS Shell, Windows2, 3.0, 3.11 и др.

К трансляторам относят программы, которые преобразуют команды программ, написанных на языках высокого уровня, таких как Qbasic, Pascal, С, Prolog, Ada и других, в команды записанные в машинных кодах, использующих двоичный алфавит. Эти программы можно назвать программами-переводчиками с языков программирования высокого уровня на машинный язык.

Трансляторы бывают двух видов: интерпретаторы и компиляторы. Оба вида трансляторов выполняют одну и туже операцию, но делают это по-разному.

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

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

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

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



Загрузить файл

Похожие страницы:

  1. Курс лекций по Информатике (1)

    Лекция >> Информатика
    ... . Физические стили.(единые) - жирный шрифт; - курсив; - шрифт фиксированной ширины (как на ... по верхнему краю), CENTER (выравнивание по центру - это значение принимается по умолчанию), BOTTOM (по ...
  2. Курс лекции по Информатике

    Конспект >> Информатика
    ... университет Кафедра прикладной математики и информатики ИНФОРМАТИКА Конспект лекций для студентов Направления: 010500 - Прикладная ... требует от него определенных знаний по информатике. Понятие информации определяется как “знания ...
  3. Курс лекций по Коммерческой логистике

    Лекция >> Логика
    ... _______ «____»________ 2003г. Курс лекций по дисциплине «Коммерческая логистика» для ... Романеева Е.В. Тольятти 2003 год Курс лекций по дисциплине «Коммерческая логистика» разработан ... взаимообусловливают друг друга. Информатика наиболее тесным образом связывает ...
  4. Курс лекций по Инновационному менеджменту

    Лекция >> Менеджмент
    ЛЕКЦИИ ПО КУРСУ “ИННОВАЦИОННЫЙ МЕНЕДЖМЕНТ” ДЛЯ 5 КУРСА СПЕЦИАЛЬНОСТЕЙ 1204 И 1901 Тема 1: “Инновационный ... г.г.) опирается на достижения в области микроэлектроники, информатики, биотехнологии, генной инженерии, новых видов ...
  5. Лекции по информатики (2)

    Реферат >> Информатика
    ... . Основная особенность курса информатики состоит в том, что все экзамены и зачеты по этому курсу, а также ... можно перепроверить свои знания по информатике. Данные тесты по информатике с 1997 года используются в систе­ме ...

Хочу больше похожих работ...

Generated in 0.0071539878845215