
- •1. Классификация программного обеспечения
- •1. Базовое программное обеспечение
- •2. Трансляторы
- •3. Языки программирования
- •4. Инструментальные средства (утилиты)
- •5. Прикладное программное обеспечение
- •2. Основные задачи ос
- •3. Типы ос
- •4. Базовая система ввода/вывода (bios)
- •5. Файловая система. Типы файловых систем. Их особенности.
- •6. Загрузчик ос
- •Addr1 - addr2
- •7. Ядро ос
- •8. Основные функции ядра
- •9. Драйвер ос
- •10. Типы драйверов
- •11. Типы многозадачности, их особенности
- •12. Понятие суперпроцесса
- •13. Потоки
- •Листинг 2. Окончание процедуры инициализации ядра Linux
- •14. Семафоры
- •15. Встроенные функции ос. Встроенные команды ос
- •16. Внешние команды
- •17. Понятие пользователя. Понятие идентификатора пользователя
- •18. Понятие группы. Понятие идентификатора группы
- •19. Виртуальная память. Swap
- •20. Историческое развитие ос
- •21. Ос unix
- •22. Типы unix
- •23. Особенности bsd. Особенности System 5
- •24. Ядро unix
- •25. Типы драйверов unix
- •26. Потоки в unix
- •27. Управление процессами в unix
- •28. Режимы ядра в Unix
- •29. Файловая система в unix
- •30. Реализация безопасности в unix на уровне файловой системы
- •31. Реализация безопасности в unix на уровне ос
- •32. Понятие пользователь, группа в unix
- •33. Бесправный пользователь. Пользователь ресурса. Пользователь ос
- •34. Понятие ресурса
- •35. Понятие консоли.
- •36. Основные команды в unix
- •37. Сеть в unix
- •38. Ос ms-dos
- •39. Особенности реализации ms-dos, как составной части unix
- •40. Реализация ядра в ms-dos
- •41. Реализация драйверов в ms-dos
- •42. Реализация потоков в ms-dos
- •43. Управление процессами в ms-dos
- •44. Ограничение на использование оп
- •45. Файловая система в ms-dos
- •46. Реализация безопасности в ms-dos
- •47. Реализация многозадачности в ms-dos
- •48. Встроенные команды ms-dos
- •49. Внешние стандартные команды ms-dos
- •50. Графическая оболочка X- Window
- •51. Графическая оболочка Windows
- •52. Ос Windows nt
- •53. Ядро Windows nt
- •54. Драйверы в Windows nt
- •55. Реализация многозадачности в Windows nt
- •56. Файловая система в Windows nt
- •57. Режимы использования оп в Windows nt
- •58. Реализация безопасности в Windows nt на уровне файловой системы
- •59. Реализация безопасности в Windows nt на уросне ос
- •1. Пользователи, ресурсы и операции доступа
- •2. Локальные, глобальные и специальные группы
- •3. Встроенные группы пользователей и их права
- •4. Возможности пользователей
- •5. Управление профилями пользователей
- •6. Аудит
- •7. Репликация каталогов в сети Windows nt
- •60. Сеть в Windows nt
- •1. Однодоменная сеть Windows nt
- •2. Многодоменная сеть Windows nt
2. Трансляторы
К трансляторам относят программы, которые преобразуют команды программ, написанных на языках высокого уровня, таких как Qbasic, Pascal, С, Prolog, Ada и других, в команды, записанные в машинных кодах, использующих двоичный алфавит. Эти программы можно назвать программами-переводчиками с языков программирования высокого уровня на машинный язык.
Трансляторы бывают двух видов: интерпретаторы и компиляторы. Оба вида трансляторов выполняют одну и туже операцию, но делают это по-разному.
Интерпретаторы, преобразуя команду, записанную на каком либо языке программирования, в команду на машинном языке, сразу же дают указание машине выполнить ее, не записывая перевод. Так происходят с каждой командой программы. Программа будет выполнена машиной только с наличием интерпретатора, который от строки к строке переводит команды и сразу же их выполняет. Поэтому, когда встанет необходимость опять выполнить данную программу, то сделать это можно будет только имея интерпретатор языка программирования на котором она записана, что не всегда удобно.
Компилятор же не выполняет команды, а просто переводит всю программу на машинный язык и записывает свой перевод в специальную, так называемую, исполнимую программу, программу, записанную в двоичном коде, которую ЭВМ поймет уже без переводчика. Интерпретатор удобно использовать на этапе написания и отладки программы, так как интерпретатор позволяет отслеживать ошибки, допущенные программистом при написании программы, а компилятор используется для преобразования уже готовой, отлаженной, выверенной программы. Компилированная программа будет выполняться быстрее, так как машине не нужно перед выполнением команды осуществлять перевод, а так же, если учесть, что языков программирования на данный момент очень много, как и программистов (причем программисты выбирают для создания программ самые разные языки программирования, согласуясь со своими вкусами, возможностями и назначением программы), то можно представить, как неудобно было бы пользоваться программами, требующими присутствия интерпретаторов. Каждый пользователь должен был бы иметь большой набор интерпретаторов различных языков.
3. Языки программирования
Языки программирования, вернее - редакторы текстов программ для языков программирования, это программы, которые позволяют записывать алгоритмы решения каких-либо задач на том или ином языке программирования. Эти редакторы позволяют не просто записывать текст программы, но обычно имеют встроенный интерпретатор этого языка, систему отслеживания ошибок, возможность формирования библиотеки подпрограмм, возможность формирования собственных пользовательских функций, причем языки программирования позволяют записывать алгоритмы на языках приближенных к обычному человеческому языку, Непосредственно из них можно запускать программы на компиляцию. Кроме того, можно работать с блоками текста программ", осуществлять их перенос из одного места программы в другое, копировать программу или ее части в указанное место другой программы, осуществлять контекстный поиск и замену подстрок.