|
|||
Аппаратное обеспечение. Программное обеспечение ⇐ ПредыдущаяСтр 2 из 2 Аппаратное обеспечение Теоретический уровень: Электроника, Автоматика, Кибернетика и др. Практический уровень: Синтез и архитектура цифровых устройств, Аппараты и приборы вычислительных систем и др. Программное обеспечение Теоретический уровень: Теория алгоритмов, Логика, Теория игр, и др. Практический уровень: Интерфейсы, Вспомогательные и прикладные программы, Системы программирования и др. 5. Трактовка понятия программного обеспечения. Группы ПО Программное обеспечение – совокупность программных средств и документации для создания и использования систем обработки компьютерных данных. Группы ПО:
6. Программный продукт, платформы и методология программирования (компьютерная программа, языки программирования, транслятор, алфавит, синтаксис, семантика) Компьютерная программа – совокупность команд процессора и правил использования для исполнения на вычислительной машине. Языки программирования – формально искусственные языки, имеющие алфавит, словарный запас, грамматику, синтаксис и семантику. Транслятор – программа-переводчик текста программы с одного языка на другой (Например: на машинный) Алфавит – разрешенный к использованию набор символов. Windows – 1-байтовый стандарт ANCI (256 символов). В других ОС 2-байтовый Unicode (65536 символов). Синтаксис – правила, определяющие конструкции языка из букв алфавита. Семантика – правила однозначного толкования каждой конструкции языка для однозначного процесса обработки данных. 7. Этапы жизненного цикла программного обеспечения. Описания этапов
Определяем характер исходных и выходных данных и функции программы. Строим математическую модель.
Оформляем требования и ТЗ (Техническое задание). Согласовываем функции, характеристики, состав средств программной совместимости, программную документацию, порядок контроля и приема работ.
Составляем проект программы, выделяем основные части и их взаимодействие. Уточняем входные/выходные данные. Разрабатываем алгоритм.
Записываем алгоритм на языке программирования.
На этапе трансляции происходит отладка. Производим тестирование для выявления ошибок.
Улучшаем, оптимизируем и устраняем дефекты ПО после передачи в эксплуатацию. Обучаем оборудование. 8. Критерии качества программного продукта Характеристики ПО:
9. Уровни абстракции компьютера и платформы. Описание платформ Абстракции: Высокий и Низкий уровень. Каждый из уровней характеризуется платформой. Платформа - средство поддержки ПО: 1) Аппаратная (Аппаратная архитектура для установки ПО) 2) Операционная (ОС и прикладной интерфейс) 3) Сетевая (Сетевой интерфейс ОС) 4) Инструментальная (Библиотеки и прикладной интерфейс) 5) Языковая (Язык программирования и прикладной интерфейс) 10. Основная задача профессионального программирования Создание высококачественного профессионального ПО. Направления создания: 1) Методология программирования (совокупность методов и концепций) 2) Технология программирования (совокупность процессов разработки) 3) Системы программирования. (совокупность 1-го и 2-го) 11. Классификация методологий программирования. Описание каждого класса методологий Ядро методологии – базовый набор методов с некоторыми возможностями Классификация: • По характеру ядра: - Императивное программирование Написания кода методом последовательных инструкций (подпрограмм). Данные предыдущих инструкций идут в память. Использует оператор присваивания, именованные переменные, составные выражения, подпрограммы. (Pascal) - ООП Написание кода в виде совокупности объектов (экземпляров классов) и классов, образующих иерархию наследования. Структурирует информацию по управляемости, минимизируя избыточность данных и соблюдая целостность. (Python) Принципы: * абстрагирование (выделение важных характеристик объекта) (важное/неважное) * инкапсуляция (ограничение взаимодействия объектов иерархией) (ключевое/подробности) * наследование (использование повторных характеристик объектов) (родительское/дочернее) * полиморфизм (функциональная обработка данных разных типов) (единое/множественное) - Функциональное программирование Написание кода в виде математических функций. В отличии от императивного программирования результат не зависит от состояния внутренних и внешних переменных, а является постоянным в результате работы с суперпозицией переменных (лямбда-исчисления). Отсутствует время выполнения (постоянно). (Lisp) - Логическое программирование Написание кода на основе логических фактов и правил вывода. Применяется автоматическое доказательство теорем и раздел Дискретной математики (метод резолюций). (Prolog) - Программирование в ограничениях Написание кода с установкой между переменными различных форм ограничений. Они определяют не последовательность шагов, а свойство решения. Связано с теорией удовлетворения ограничений и комбинаторными задачами искусственного интеллекта (электронные схемы, планирование, расписания). (Prolog). • По реализации ядра: - Централизованная Центральная аппаратная архитектура (задачи идут к одному вычислительному блоку) - Параллельная Параллельная аппаратная архитектура (задачи выполняются параллельно на разных блоках) 12. Системы программирования и их классификация Система программирования – часть базового ПО, поддерживающая процесс программирования и разработку (работу) программ. Классификация:
* Инструментарий поддержки технологических процессов * Инструментарий разработки и сопровождения ПО * Инструментарий поддержки коллективной разработки
* Редакторы по формированию многочисленных продуктов * Анализаторы * Преобразователи * Инструменты поддержки процесса выполнения
* Вспомогательные ПО * Пакеты разработчика * Инструментальные средства
* Интерфейс командной строки * Графический интерфейс 13. Классификация языков, участвующие в процессе создания программ В процессе создания участвуют: 1. Естественные языки. 2. Языки моделирования. 3. Языки программирования. Различают языки:
Классификация:
- Машинные языки (40-е) - Языки Ассемблеров (50-е) - Процедурные языки (начало 60-х) - Поддержки сложных структур данных (конец 60-х) - Искусственного интеллекта (70-е) - Язык нейросетей (80-е, Россия – 60-е)
- Императивного программирования (структурного / параллельного) - Объектно-ориентированного программирования - Функционального программирования - Логического программирования - Программирования в ограничениях
- Универсальные (Fortran) - Уникальные (финансовые расчеты) (COBOL) - Параллельного программирования (Concurent Pascal) - «С» (С) - «Pascal» (Pascal) - «Ada» (Ada) - «Simula» (Simula) - «Lisp» (Lisp) - «Prolog» (Prolog) - «Forth» (Forth)
- Формирования текстов - Разметки - Скриптов (сценариев) - Промежуточные - Программирования агентов - Создания графики - Описания аппаратуры - Описания виртуальной реальности - Языки конфигурации.
- Низкого уровня - Высокого уровня - Сверхвысокого уровня
- Ориентация на скорость выполнения - Ориентация на удобство программирования 14. Компиляторы и средства технического обслуживания. Этапы обработки программ после ввода их текстов в компьютер. Итоги каждого этапа (т.е. что формируется на каждом этапе) Компилятор – программа, выполняющая трансляцию исходного кода (на языке высокого уровня/ассемблера) в код на низкоуровневом языке. Языки кодирования алгоритма:
Транслятор – программа, переводящая код языка высокого уровня на более низкий Декомпиляторы, Деассемблеры – программы, переводящие код низкого уровня в более высокий Этапы обработки программы из файла:
15. Классификация трансляторов Трансляторы делятся на: • Компиляторы • Интерпретаторы • Ассемблеры • Декомпиляторы • Деассемблеры 16. Этапы трансляции
17. Понятие виртуальная машина, промежуточный код (байт-код) Виртуальная машина – программа-симулятор запуска какой-либо ОС (при установленной странней ОС) Байт-код – промежуточный код низкого уровня, генерируемый транслятором (машинный код для VM) 18. Классификация компьютеров Конструктивное оформление: 1. Настольные (Desktop) - Системный блок - Моноблок 2. Переносные (Laptop) 3. Ноутбуки (Notebook) 4. Планшетные, смартфоны, коммуникаторы, карманные (Palmtop) Тип использования: 1. Домашний 2. Офисный 19. Классификация программного обеспечения Базовое и системное ПО – ПО, обеспечивающее работу компьютера Инструментальное ПО – ПО для создания нового ПО Прикладное ПО – ПО, преобразующее данные в условиях конкретной проблемы 20. Классификация базового ПО и описание каждой группы базового ПО Базовое ПО организует обработку информации и обеспечивает рабочую среду для прикладных программ. В состав входят: • ОС • Сервисное ПО (Утилиты, антивирусные средства) • ПО Тех. Обслуживания (Тестовые программы, программы контроля) • Инструментальное ПО (Трансляторы языков программирования, компиляторы и др.) 21. Операционные системы и их классификация. Описание каждой группы ОС ОС – комплекс программ для автоматизации преобразования данных, расширение возможностей аппаратной части, обеспечение интерфейса пользователю Состав ОС:
Классификация: Взаимодействие с пользователем: • Пакетные • Диалоговые • Графические • Встроенные (без взаимодействия) По числу одновременных задач: • Однозадачные • Многозадачные По числу пользователей: • Однопользовательские • Многопользовательские По аппаратурной основе: • Однопроцессорные • Многопроцессорные • Сетевые • Распределенные 22. Операционные оболочки Операционная оболочка – комплекс программ для облегчения диалога между пользователем и компьютером Оболочки: • Текстовая – текстовый список • Графическая – графический образ (пример – рабочий стол) 23. Классификация ресурсов вычислительных систем Ресурсы:
24. Характерные семейства ОС Семейство DOS:
Семейство OS/2:
Семейство UNIX:
Семейство Windows:
25. Архитектура ОС. Файловые подсистемы Основные компоненты: • Подсистема управления процессами • Файловая подсистема • Подсистема ввода-вывода Файловая подсистема: • совокупность всех файлов и каталогов на дисках • таблицы распределения свободного и занятого пространства • системные программные средства с операциями над файлами 26. Структура диска, разбитого на разделы Раздел — часть долговременной памяти жёсткого диска или флеш-накопителя, выделенная для удобства работы, и состоящая из смежных блоков. На одном устройстве хранения может быть несколько разделов. Структура:
27. Понятие физического и логического форматирования диска. Первичный раздел и расширенный раздел Физическое форматирование: 1. Дорожки диска разбиваются на секторы 2. Записываются заголовки и заключения секторов (префиксы и суффиксы) 3. Формируются интервалы между секторами и дорожками 4. Область данных каждого сектора заполняется фиктивными значениями или текстовыми наборами данных 28. Структура функциональной организации персональных компьютеров Большинство построены по архитектуре фон Неймана (предполагает наличие общего запоминающего устройства для хранения данных и команд и их обработки)
Устройство ПК:
29. Характеристика групп устройств, представленных на схеме функциональной организации персональных компьютеров Различают 2 вида поставок: Базовая (Минимальная) и Расширенная. Базовая поставка — это сочетание системного блока, монитора, клавиатуры, манипулятора (мышь) и некоторых крайне необходимых устройств, определяющих специализацию компьютера. Расширенная поставка включает в себя принтеры, сканеры, дополнительные устройства внешней памяти, расширенный состав видеокарт, звуковых плат и т.п. 30. Понятие системного устройства ввода и вывода Устройство ввода-вывода – компонент архитектуры компьютера для возможности взаимодействия с пользователем Устройства ввода – приборы для занесения данных в компьютер Устройства вывода – приборы для извлечения результатов работы компьютера 31. Системный блок и его составляющие Системный блок – корпус с необходимыми устройствами для компьютера Элементы системного блока: • Корпус • Блок питания • Материнская плата • Процессор • Оперативная память • Видеокарта • Звуковая карта • Жёсткий диск • Дисковод (оптический привод) • Система охлаждения 32. Назначение системной платы и её составляющие. Стандарты системных плат Предназначение материнской платы – обеспечение совместной работы устройств системного блока На материнской плате размещаются: • Процессор • Процессорный кулер • Микросхемы кэш-памяти второго уровня • Микросхема перепрограммируемой памяти (EEPROM) (BIOS, начальная проверка ПК, загрузка ОС и др.) • Чипсет для управления обменом данными между компонентами (северный и южный мост) • Батарея CMOS 33. BIOS, назначение, позиция установки, старый и новый стандарт BIOS BIOS (Basic input-output system) – основная система ввода-вывода, осуществляет настройку компонентов ПК, регулируют загрузку ОС UEFI (Новый стандарт) – загружается с накопителей больше 2.2 Тб., использует схему с 64-битными элементами, поддерживает защищенную загрузку. 34. Понятие чипсета, северный и южный мост, примеры распространённых чипсетов Чипсет – набор микросхем, связывающий компоненты на материнской плате Северный мост – системный контроллер чипсета. отвечает за работу с ОЗУ, ГПУ и ЦПУ Южный мост – функциональный контроллер чипсета, контроллер ввода-вывода, взаимодействие интерфейсов (IDE, SATA, USB и др.) и северного моста. 35. Центральный процессор, назначение, виды, типовые параметры ЦПУ – основной рабочий компонент, выполняет операции АЛУ, управляет вычислительным процессом и координирует работу всех устройств Параметры: • Тактовая частота • Разрядность • Кэш-память • Энергопотребление и тепловыделение • Встроенное графическое ядро • Сокет • Множитель и системная шина 36. Виды запоминающих устройств компьютер Внутренняя память: оперативная память, постоянная память, кэш. ОЗУ – быстродействующее запоминающее устройство, при отключении питания – информация теряется ПЗУ – постоянное запоминающее устройство, при отключении питания – информация НЕ теряется Кэш – высокоскоростная память, буфер ОЗУ и ЦПУ (данные, используемые ЦПУ в ближайший такт) Внешняя память: накопители для долговременного хранения информации 37. Назначение ОЗУ, стандарты плат памяти, характеристики и маркировка, тайминги Назначение:
Характеристики: - Тип (DDR) - Объем - Частота - Тайминги (между тактами) - Напряжение - Производитель - Охлаждение
Маркировки: • KVR – производитель • 1066 – рабочая частота • D3 – тип оперативной памяти (DDR3) • D-rank – режим (2-х канальный) • 4 – кол-во чипов памяти • 7 – задержка сигнала • S – наличие термодатчиков • K2 – количество плат в наборе • 4G – объем 38. Внутренние шины передачи данных (системная шина, локальная шина, PCI, PCMCIA, AGP, PCI Express) Системная шина – множество проводников для передачи данных, адресов памяти и сигналов между компонентами Локальная шина – связь слотов расширения и ЦПУ PCI – ввод-вывод для подключения периферийных устройств к материнской плате (видеокарта, звуковая) PCMCIA – спецификация на модули расширения для ноутбуков (ТВ) AGP – 32-разрядная системная шина для видеокарты PCI Express – шина, использующая модель PCI и высокопроизводительный протокол последовательной передачи данных 39. ВЗУ, назначение, виды устройств Внешнее запоминающее устройство – медленное, большой емкости Виды:
40. Винчестеры, назначение, виды, интерфейс, режим доступа, логическое и физическое форматирование Винчестер – энергонезависимое запоминающее устройство на основе микросхем памяти Назначение: хранение ОС, ПО, файлов пользователя, файла подкачки Интерфейс: • SCSI • SAS • Firewire • IDE • SATA • eSATA • ATA • USB • Thunderbolt Режим доступа:произвольный Виды жестких дисков: ü HDD ü SSD Логическое форматирование – создание загрузочных записей, секторов, структуры файловой системы Физическое форматирование – разбивки нового ЖД на дорожки, сектора для его поставки на продажу 41. Твердотельные накопители и их виды
42. Накопители на оптических дисках и их разновидности (CD-ROM, DVD, Blu-Ray Disk)
43. Понятие программы и алгоритма
44. Понятия машинный язык, команда, байт, адрес оперативной памяти
45. Свойства алгоритма и средства его записи. Отличие языка схем от псевдокода
46. Принцип нисходящего проектирования
47. Структурированный алгоритм и базовые управляющие структуры. Шаблоны базовых управляющих структур
48. Понятие модуля и программной единицы
49. Виды предложений текстов программ. Краткая характеристика каждого из предложений
50. Понятие постоянной, переменной, объявления и комментария. Примеры
51. Виды программ, которые можно разработать в Visual Studio
52. Структура консольного приложения
53. Линейный алгоритм. Пример разработки такого алгоритма
54. Алгоритм с ветвлениями. Пример разработки такого алгоритма
55. Циклический алгоритм. Пример разработки такого алгоритма
56. Что понимают под созданием переменной
57. Что такое приложение с графическим интерфейсом
58. Понятие типа данных. Простые и структурные типы данных
59. Понятие системы счисления
60. Позиционные и непозиционные системы счисления (примеры тех и других)
61. Причины использования разных позиционных систем счисления в информатике
62. Выполнение арифметических операций в позиционных системах счисления
63. Перевод чисел из одной системы счисления в другую систему счисления
64. Разница Python и C#
|
|||
|