Хелпикс

Главная

Контакты

Случайная статья





Аппаратное обеспечение. Программное обеспечение



Аппаратное обеспечение

Теоретический уровень: Электроника, Автоматика, Кибернетика и др.

Практический уровень: Синтез и архитектура цифровых устройств, Аппараты и приборы вычислительных систем и др.

Программное обеспечение

Теоретический уровень: Теория алгоритмов, Логика, Теория игр, и др.

Практический уровень: Интерфейсы, Вспомогательные и прикладные программы, Системы программирования и др.

5. Трактовка понятия программного обеспечения. Группы ПО

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

Группы ПО:

  • Базовое и системное ПО – ПО, обеспечивающее работу компьютера
  • Инструментальное ПО – ПО для создания нового ПО
  • Прикладное ПО – ПО, преобразующее данные в условиях конкретной проблемы

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

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

Языки программирования – формально искусственные языки, имеющие алфавит, словарный запас, грамматику, синтаксис и семантику.

Транслятор – программа-переводчик текста программы с одного языка на другой (Например: на машинный)

Алфавит – разрешенный к использованию набор символов. Windows – 1-байтовый стандарт ANCI (256 символов). В других ОС 2-байтовый Unicode (65536 символов).

Синтаксис – правила, определяющие конструкции языка из букв алфавита.

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

7. Этапы жизненного цикла программного обеспечения. Описания этапов

  1. Анализ требований

Определяем характер исходных и выходных данных и функции программы. Строим математическую модель.

  1. Определение спецификаций

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

  1. Проектирование

Составляем проект программы, выделяем основные части и их взаимодействие. Уточняем входные/выходные данные. Разрабатываем алгоритм.

  1. Кодирование

Записываем алгоритм на языке программирования.

  1. Отладка и тестирование

На этапе трансляции происходит отладка. Производим тестирование для выявления ошибок.

  1. Сопровождение и эксплуатация

Улучшаем, оптимизируем и устраняем дефекты ПО после передачи в эксплуатацию. Обучаем оборудование.

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. Компиляторы и средства технического обслуживания. Этапы обработки программ после ввода их текстов в компьютер. Итоги каждого этапа (т.е. что формируется на каждом этапе)

Компилятор – программа, выполняющая трансляцию исходного кода (на языке высокого уровня/ассемблера) в код на низкоуровневом языке.

Языки кодирования алгоритма:

  • Машинный
  • Ассемблера
  • Высокого уровня
  • Сверхвысокого уровня

Транслятор – программа, переводящая код языка высокого уровня на более низкий

Декомпиляторы, Деассемблеры – программы, переводящие код низкого уровня в более высокий

Этапы обработки программы из файла:

  1. Трансляция
  2. Компоновка
  3. Загрузка
  4. Активизация

15. Классификация трансляторов

Трансляторы делятся на:

• Компиляторы

• Интерпретаторы

• Ассемблеры

• Декомпиляторы

• Деассемблеры


16. Этапы трансляции

  1. Лексический анализ (преобразование символов исходного файла в последовательность лексем (отдельные символы, ключевые слова, имена и постоянные))
  2. Синтаксический/грамматический анализ (воссоздание структуры программы (дерево разбора))
  3. Семантический анализ (привязка имен и типов, определение типов выражений и совместимостью (промежуточный код))
  4. Оптимизация (удаление лишних конструкций (оптимизация по быстродействию или объемам памяти))
  5. Генерация кода: (формирование кода на целевом языке)

17. Понятие виртуальная машина, промежуточный код (байт-код)

Виртуальная машина – программа-симулятор запуска какой-либо ОС (при установленной странней ОС)

Байт-код – промежуточный код низкого уровня, генерируемый транслятором (машинный код для VM)

18. Классификация компьютеров

Конструктивное оформление:

1. Настольные (Desktop)

- Системный блок

- Моноблок

2. Переносные (Laptop)

3. Ноутбуки (Notebook)

4. Планшетные, смартфоны, коммуникаторы, карманные (Palmtop)

Тип использования:

1. Домашний

2. Офисный

19. Классификация программного обеспечения

Базовое и системное ПО – ПО, обеспечивающее работу компьютера

Инструментальное ПО – ПО для создания нового ПО

Прикладное ПО – ПО, преобразующее данные в условиях конкретной проблемы

20. Классификация базового ПО и описание каждой группы базового ПО

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

В состав входят:

• ОС

• Сервисное ПО (Утилиты, антивирусные средства)

• ПО Тех. Обслуживания (Тестовые программы, программы контроля)

• Инструментальное ПО (Трансляторы языков программирования, компиляторы и др.)


21. Операционные системы и их классификация. Описание каждой группы ОС

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

Состав ОС:


  • Ядро
  • Драйверы устройств
  • Сетевая подсистема
  • Файловая система
  • Системные библиотеки
  • Утилиты

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

Взаимодействие с пользователем:


• Пакетные

• Диалоговые

• Графические

• Встроенные (без взаимодействия)


По числу одновременных задач:


• Однозадачные

• Многозадачные


По числу пользователей:


• Однопользовательские

• Многопользовательские


По аппаратурной основе:


• Однопроцессорные

• Многопроцессорные

• Сетевые

• Распределенные


22. Операционные оболочки

Операционная оболочка – комплекс программ для облегчения диалога между пользователем и компьютером

Оболочки:

• Текстовая – текстовый список

• Графическая – графический образ (пример – рабочий стол)

23. Классификация ресурсов вычислительных систем

Ресурсы:

  • Программные (процессы, драйверы, виртуальное адресное пространство)
  • Аппаратные (процессоры, оперативная память, устройства ввода/вывода, внешняя память)

24. Характерные семейства ОС

Семейство DOS:


  • Однопользовательская
  • Однозадачная
  • Командный интерфейс
  • 16-разрядная
  • Несетевая
  • Модульная структура
  • Малый объем ОЗУ (до 1 Мбайт)
  • Отсутствие средств защиты

Семейство OS/2:


  • Однопользовательская
  • Многозадачная (Параллельная работу)
  • Графический интерфейс
  • 32-разрядная
  • Файловая система – HPFS
  • Малое число приложений


Семейство UNIX:


  • Многопользовательская
  • Многозадачная
  • Сетевая
  • Командная, Графический интерфейс
  • 32/64-разрядная
  • Мобильная
  • Файловая система – NFS
  • Набор улит
  • Несколько видов оболочек (интерфейсов взаимодействия ядра и пользователя)
  • Взаимодействие с пользователем посредством терминала
  • Текстовые файлы для настройки и управления
  • Представление устройств и средств как файлов
  • Использование конвейеров программ

Семейство Windows:


  • Многопользовательские
  • Многозадачные
  • Сетевые и несетевые
  • Графические
  • 32/64-разрядные
  • Подключение новых устройств по технологии Plug and Play
  • Файловая система: FAT32, NTFS

25. Архитектура ОС. Файловые подсистемы

Основные компоненты:

• Подсистема управления процессами

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

• Подсистема ввода-вывода

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

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

• таблицы распределения свободного и занятого пространства

• системные программные средства с операциями над файлами

26. Структура диска, разбитого на разделы

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

Структура:

  • Информация о размещении разделов на жёстком диске хранится в таблице разделов, которая является частью главной загрузочной записи (MBR).
  • Раздел может быть либо первичным(этот раздел всегда содержит либо одну файловую систему, либо другие логические разделы), либо расширенным(В расширенном разделе можно создать несколько логических разделов).
  • В первом секторе каждого первичного раздела находится загрузочный сектор, отвечающий за загрузку операционной системы с этого раздела. Информация о том, какой раздел будет использован для загрузки операционной системы, тоже записана в главной загрузочной записи.
  • В MBR под таблицу разделов выделено 64 байта. Каждая запись занимает 16 байт. Таким образом, всего на жестком диске может быть создано не более 4 разделов. Когда разрабатывалась структура MBR, это считалось достаточным. Однако, позднее был введён расширенный раздел, в котором можно прописать несколько логических разделов.
  • По правилам расширенный раздел может быть только один. Таким образом, в максимальной конфигурации на жёстком диске может быть сформировано три первичных и один расширенный раздел, содержащий несколько логических.

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. Назначение ОЗУ, стандарты плат памяти, характеристики и маркировка, тайминги

Назначение:

  1. Хранение данных и команд для передачи ЦПУ
  2. Хранение результатов вычислений ЦПУ
  3. Считывание/запись содержимого ячеек

Характеристики:


- Тип (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. ВЗУ, назначение, виды устройств

Внешнее запоминающее устройство – медленное, большой емкости

Виды:

  • CD-ROM – компакт-диск объемом до 879 мбайт
  • DVD – диск с объемом до 4,7 гигабайта
  • Blu-Ray Disc – диск с объемом до 50 гигабайт
  • HDD, SSD – энергонезависимое запоминающее устройство на основе микросхем памяти
  • Флэш-накопители – использует в качестве носителя флеш-память (интерфейс USB)
  • Карты памяти - компактное устройство твердотельного типа последовательного доступа
  • Дискеты – диск с ферромагнитным слоем в защитном пластиковом корпусе

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#



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.