1 Программное обеспечение 1.ВведениеВведение 2.Прикладные программыПрикладные программы 3.Системные программыСистемные программы 4.Системы программированияСистемы программирования 5.Утилиты, не входящие в ОС
2 Программное обеспечение Введение
3 Программное обеспечение аппаратные средства (hardware) программное обеспечение (software) Взаимодействие человека с компьютером
4 Программное обеспечение Прикладное ПО – программы, которые пользователь использует для решения своих задач текстовые редакторы графические редакторы базы данных … Системное ПО – обеспечивает взаимодействие пользователя и прикладных программ с аппаратными средствами операционные системы драйверы утилиты Системы программирования – средства создания новых программ. Программы пользователей – пользователи составляют их для своих собственных нужд.
5 Программное обеспечение аппаратные средства (hardware) системное ПО прикладное ПО системы программирования ПОЛЬЗОВАТЕЛИ ПРОГРАММИСТЫ
6 Программное обеспечение Прикладные программы
7 ПО для работы с текстом Текстовые редакторы – для редактирования текстовых документов без оформления Блокнот – файлы *.txt Текстовые процессоры – для редактирования текстовых документов WordPad – файлы *.doc (текст + рисунки) Word – файлы *.doc, *.docx (текст + рисунки + таблицы + автофигуры + диаграммы …) OpenOffice Writer – файлы *.odt – бесплатно openoffice.orgopenoffice.org
8 ПО для обработки изображений Графические редакторы Растровые рисунки: Paint – файлы *.bmp (также *.gif, *.jpg) Adobe Photoshop – файлы *.psd Gimp – бесплатно Paint.NET – бесплатно Векторные рисунки: CorelDraw – файлы *.cdr Adobe Illustrator – файлы *.ai Inkscape – бесплатно OpenOffice Draw – файлы *.odg – бесплатно
9 Прикладное ПО Редакторы видео (файлы *.avi, *.mpg, *.wmv) Movie Maker (в составе Windows) Pinnacle Studio Adobe Premier Издательские системы – для подготовки печатных материалов (газет, книг, буклетов) Microsoft Publisher QuarkXPress Adobe InDesign Scribus – бесплатно
10 Офисное ПО Электронные таблицы – для выполнения расчетов с табличными данными Microsoft Excel – файлы *.xls, *.xlsx OpenOffice Calc – файлы *.ods – бесплатно Системы управления базами данных Microsoft Access – файлы *.mdb, *.accdb OpenOffice Base – файлы *.odb – бесплатно Создание презентаций Microsoft PowerPoint – файлы *.ppt, *.pptx OpenOffice Impress – файлы *.odp – бесплатно
11 ПО для работы в Интернете Браузеры – для просмотра Web-страниц на экране Internet Explorer – бесплатно Mozilla Firefox – бесплатно Opera – бесплатно Safari – бесплатно Chrome – бесплатно Почтовые программы – прием и отправка Microsoft Outlook Express (в составе Windows) Microsoft Outlook TheBat Mozilla Thunderbird – бесплатно
Какие бывают программы? Свободное ПО с открытым исходным кодом (Open Source): можно бесплатно запускать и использовать в любых целях изучать текст программы распространять (бесплатно или за плату) изменять код (развитие и усовершенствование) Бесплатное ПО (Freeware): можно бесплатно использовать; исходного кода нет; есть ограничения на: коммерческое использование изменение кода извлечение данных LinuxGimp Avast Firefox Opera 12
13 Какие бывают программы? Условно-бесплатное ПО (Shareware): бесплатное ПО с ограничениями: отключены некоторые функции ограничен срок действия (30 дней) ограничено количество запусков раздражающие сообщения принудительная реклама Платная регистрация снимает ограничения. Коммерческое ПО: плата за каждую копию бесплатная техническая поддержка (!) запрет на изменение кода и извлечение данных быстрое внесение изменений (сервис-паки, новые версии) Nero Burning Rom TheBat
14 Использование программ Основания: договор в письменной форме при массовом распространении – лицензионное соглашение на экземпляре Можно без разрешения автора: хранить в памяти 1 компьютера (или по договору) вносить изменения, необходимые для работы на компьютере пользователя (но не распространять!) исправлять явные ошибки изготовить копию для архивных целей перепродать программу
15 Программное обеспечение Системные программы
Системное ПО Базовое ПО ОС Операционные оболочки Сервисное ПО (Утилиты) Программы диагностики работоспособности компьютера Программы обслуживания дисков Программы Обслуживания сетей Антивирусные программы Программы Архивации данных
17 Операционные системы Операционная система (ОС) – это комплекс программ, обеспечивающих пользователю и прикладным программам удобный интерфейс (способ обмена информацией) с аппаратными средствами компьютера. Функции ОС (что она обеспечивает): обмен данными с внешними устройствами работу файловой системы (файлы, папки) запуск и выполнение остальных программ тестирование компьютера, обработка ошибок распределение ресурсов (процессор, память, внешние устройства)
18 Файловые системы FAT32 (Windows 95/98/2000/XP/Vista/7) медленно работает с большими дисками не поставить права доступа NTFS (Windows NT/2000/XP/Vista/7) права на доступ квоты для пользователей сжатие дисков «на лету» журналирование сложность Windows: Linux: ext3, ext4 планируемые изменениях на диске записываются в журнал (для восстановления при сбое)
19 Состав операционной системы загрузчик ОС – это небольшая программа, которая находится в секторе 1 загрузочного диска, ее задача – загрузить в память основную часть (ядро) ОС система распределения памяти система ввода и вывода (BIOS = Basic Input and Output System), в микросхеме флэш-памяти на материнской плате тестирование при запуске чтение и запись на диски обмен данными с клавиатурой, монитором, принтером календарь и часы настройки данного компьютера командный процессор (command.com, cmd.exe) выполняет команды, введенные с клавиатуры обеспечивает загрузку и выполнение других программ
ОС Количество пользователей, которые одновременно работают Однопользовательские Многопользовательские Количество процессов, которые одновременно выполняются под управлением системы Однозадачные Многозадачные Количество поддерживаемых процессоров Однопроцессорные Многопроцессорные Тип интерфейса Командные (текстовые) Объектно- ориентированные (графические) Тип доступа пользователя к компьютеру С пакетной обработкой Разделением времени Реальное время Тип используемых ресурсов Сетевые Локальные
21 Типы ОС Однозадачные – в каждый момент выполняется только одна задача (программа), она получает все ресурсы компьютера. Примеры: MS DOS, FreeDOS, DR DOS, PC DOS Многозадачные – может одновременно выполняться несколько задач; ОС распределяет кванты времени процессора между задачами. Windows 95/98/Me Windows NT/2000/XP/2003/Vista/7 UNIX – надежная сетевая ОС (Интернет) Linux – бесплатная UNIX-подобная ОС QNX – ОС реального времени
22 Типы ОС Однопользовательские – в каждый момент с компьютером работает один пользователь, он получает все ресурсы компьютера. Многопользовательские – с мощным компьютером одновременно работают несколько пользователей. терминал = монитор + клавиатура терминал
23 Программное обеспечение Системы программирования (инструментальные средства)
24 Системы программирования Системы программирования (или инструментальные средства) – это ПО, предназначенное для разработки и отладки новых программ. Проблема: компьютеры понимают только язык кодов (последовательность нулей и единиц) для человека удобнее давать задания на естественном языке (русском, английском) Компромисс: программы составляются на языках программирования и затем переводятся в коды с помощью специальных программ
25 Языки программирования Всего более 600, широко используется примерно 20. Машинно-ориентированные языки: машинные коды: 09 FE AC 3F ассемблеры: символическая запись машинных команд: mov AX, BX макросассемблеры: одна команда языка заменяет несколько машинных команд Языки высокого уровня (алгоритмические): для обучения: Бейсик (1965), Паскаль (1970), Лого, Рапира профессиональные: Си (1972), Паскаль (Delphi), Фортран (1957), Visual Basic для задач искусственного интеллекта: ЛИСП, Пролог для параллельных вычислений: Ада для программирования в Интернете: JavaScript, Java, PHP, Perl, ASP, …
Трансляторы Транслятор – это программа, которая переводит текст других программ в машинные коды. program qq; var x: integer; begin x := 1; writeln('Привет! X = ', x); end; program qq; var x: integer; begin x := 1; writeln('Привет! X = ', x); end; транслятор программа в машинных кодах программа на языке Паскаль Могут ли быть ошибки в трансляторах? ?
27 Типы трансляторов интерпретатор – переводит в коды 1 строчку программы и сразу ее выполняет; компилятор – переводит в коды сразу всю программу и создает независимый исполняемый файл (*.exe); удобнее отлаживать программу программы работают медленно (цикл из 400 шагов!) для выполнения программы нужен транслятор сложнее отлаживать программу программы работают быстро для выполнения программы не нужен транслятор
28 Компоновщик Компоновщик (редактор связей, Linker) – это программа, которая объединяет части одной программы и библиотечные функции в один исполняемый файл. qq.cpp qq2.cpp транслятор исходные файлы объектные файлы qq.exe исполняемый файл компоновщик qq.obj qq2.obj библиотеки функций
29 Другие программы Отладчик (англ. debugger) – это программа, которая облегчает поиск ошибок в других программах (их отладку). Возможности: пошаговое выполнение «выполнить до курсора» просмотр и изменение значений переменных точки останова (англ. breakpoints) Профайлер (англ. profiler) – это программа, которая определяет, сколько времени занимает выполнение каждой процедуры (и каждой команды) в программе в процентах от общего времени работы. Цель: определить, какие части программы «тормозят» ее (англ. bottleneck – бутылочное горлышко), именно их и надо оптимизировать.
30 Интегрированная среда разработки Интегрированная среда разработки (англ. IDE = Integrated Development Environment) : редактор текста программ транслятор компоновщик отладчик профайлер Примеры: Turbo Pascal Borland C++ Microsoft Visual C++
31 Среда быстрой разработки Среда быстрой разработки программ (англ. RAD = Rapid Application Development) интерфейс строится с помощью мыши часть кода создается автоматически Примеры: Delphi, Borland C++ Builder, Visual Studio…
32 Служебное ПО утилита (лат. utilitas – польза) – это служебные программы для проверки и настройки компьютера: разбивка диска на разделы (fdisk.exe) форматирование диска (format.com) тестирование диска (chkdsk.exe) редактирование реестра (regedit.exe) проверка соединения (ping.exe) драйвер (англ. driver – водитель) – это программа, которая постоянно находится в памяти и обеспечивает обмен данными с внешним устройством (файлы *.sys в Windows) драйвер видеокарты, звуковой карты, сетевой карты, принтера, сканера, …
33 Утилиты, не входящие в ОС информация о системе Everest SiSoft – бесплатно сканирование (MiraScan, EpsonScan, со сканером) программы для записи CD и DVD Nero Burning ROM DeepBurner Free – бесплатно
34 Утилиты, не входящие в ОС антивирусные программы AVP, Е. Касперский, DrWeb, И. Данилов Norton Antivirus NOD32 архиваторы – программы для упаковки файлов WinRAR (Е. Рошал) – архивы *.rar, *.zip – WinZIP – архивы *.zip –