Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

тема Юникс UNIX. К тому времени операционным системам как классу программного обеспечения шел уже второй дес

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 21.5.2024

Операционные системы.
1. Исторический обзор.

Краткая история открытых операционных систем

На рубеже шестидесятых и семидесятых годов XX в. одном из исследовательских подразделений американской телекоммуникационной монополии Эй-Ти-энд-Ти (AT&T) была выполнена разработка, ставшая важнейшей вехой в истории операционных систем (далее — ОС): система Юникс (UNIX). К тому времени операционным системам как классу программного обеспечения шел уже второй десяток. Были разработаны больше сотни различных ОС для разных компьютеров, из них полтора десятка находились в «боевой» эксплуатации.

Задуманная и реализованная Кеном Томсоном при участии нескольких коллег, Юникс вобрала в себя многие черты более ранних ОС, но обладала целым рядом свойств, отличающих ее от большинства предшественниц:

  1.  компонентная архитектура: принцип «одна программа — одна функция» плюс мощные средства связывания различных программ для решения возникающих задач;
  2.  минимизация ядра (кода, выполняющегося в привилегированном режиме процессора) и количества системных вызовов;
  3.  независимость от аппаратной архитектуры и реализация на языке высокого уровня (язык программирования С стал «побочным продуктом» разработки Юникс).

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

Одним из центров развития Юникс стал Университет Калифорнии в Беркли, там было создано множество средств, дополняющих систему и развивающих ее концепцию. В конце концов, в Беркли создали свой вариант ОС той же архитектуры, получивший название BSD (Berkeley Software Distribution).

Задачу разработать независимую (от авторских прав корпорации Эй-Ти-энд-Ти) реализацию той же архитектуры поставил и Ричард Столлмен (Richard Stallman), основатель проекта GNU(характерно, что аббревиатура расшифровывается как GNU's Not Unix, т. е. «ГНУ — это не Юникс»). В ходе разворачивания проекта (1980–90-е гг.) было создано множество утилит и инструментальных средств, которые сегодня активно используются в BSD (входя в систему) и Юникс (как правило, распространяемые в качестве дополнений), а также являющихся основой операционных систем на основе ядра Линукс (Linux), разработка которого была запущена и возглавляется с начала девяностых Линусом Торвальдсом (Linus Torvalds).

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

  1.  основанные на Эй-Ти-энд-Ти Юникс (в разнообразных фирменных вариантах, таких как AIX (компания IBM), Solaris (компания Sun Microsystems) и т. п.);
  2.  BSD (в него входят FreeBSDOpenBSDNetBSD, а также Darwin, являющаяся основой Mac OS X);
  3.  ГНУ/Линукс (в различных вариантах, или дистрибутивах, таких как Debian GNU/LinuxRedHat Linux MandrakeSoft и пр.).

Системы, содержащие исходные тексты, изначально написанные в Эй-Ти-энд-Ти, несвободны[5], а BSD и ГНУ/Линукс разрабатываются под свободными лицензиями.

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

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

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

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

Самым заметным результатом существования этого стандарта стало эффективное разворачивание сетей Интернет в девяностых годах.

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

Несвободные открытые операционные системы

Свое значение сохраняют и несвободные открытые операционные системы, такие как SolarisAIXTrue64 UNIX. Как правило, они применяются в сочетании с соответствующими аппаратными платформами, сопровождаются и поддерживаются производителями последних. Большинство свободных прикладных программ и пакетов перенесены или легко переносятся на такие ОС.

Альтернативные операционные системы

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

Microsoft Windows NTMicrosoft Windows 2000Microsoft Windows XP

ОС этой серии позиционируются компанией Microsoft как альтернатива стандартным (открытым) ОС и получили широкое распространение в сегменте однопользовательских настольных микрокомпьютеров (ПК) архитектуры x86/IA-32. Windows NT — дальний потомок ОС RSC и VMS корпорации Digital, вытесненных в свое время открытыми ОС с миникомпьютеров.

Для Microsoft Windows NT существуют специальные пакеты (Cygwin, UWIN, UNIX Services for Windows), эмулирующие системные вызовы, оболочку и утилиты открытых ОС на платформе этой ОС, так же, как и реализации стандартной графической платформы (Оконной системы Икс, см. главу 3). Кроме того, для многих программ и пакетов с графическим интерфейсом существуют переносы в Windows NT (т. е. с заменой стандартной графики на интерфейс Windows).

Обольщаться по этому поводу не стоит: опыт применения альтернативных ОС в большинстве случаев окажется более чем ущербным.

MS-DOSMicrosoft Windows 3.х, 9х, Me

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

«Классическая» Mac OS

Под торговой маркой Mac OS вплоть до версии Mac OS X (исключительно) компания Apple Computers поставляла самодельные ОС для своих ПК Apple Macintosh, до сих пор находящиеся в эксплуатации. Под «классическую» Mac OS перенесено лишь небольшое количество свободных программ.

Следует заметить, что сегодня Эппл Компьютерз (Apple Computers) под той же торговой маркой поставляет Mac OS X — «бутерброд» из свободной открытой ОС Darwin и проприетарных графических компонентов; для Darwin существуют (или легко осуществимы) переносы большей части свободных программ и пакетов. Старые ПК Макинтош, ресурсов которых недостаточно для запуска Mac OS X, могут быть модернизированы установкой на них ГНУ/Линукс соответствующей версии.

Роль свободных операционных систем

В последние 5–7 лет рост пользовательской базы открытых ОС в основном происходит за счет распространения их свободных вариантов — BSD и ГНУ/Линукс — причем темп задает сейчасГНУ/Линукс.

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

2. Структура операционной системы (ядро, коммандный процессор, BIOS).

Раздел 1: Общие сведения о программном обеспечении

Тема урока: Структура операционных систем

Структура ОС

В состав операционной системы входят следующие подсистемы:

  1.  Управление процессами.
  2.  Управление основной памятью.
  3.  Управление внешней памятью.
  4.  Управление устройствами ввода/вывода.
  5.  Управление файлами.
  6.  Защита системы.
  7.  Сетевая поддержка.
  8.  Командный интерфейс системы.

Управление процессами

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

  1.  создание и удаление процессов;
  2.  приостановку и возобновление процессов;
  3.  обеспечение механизмов для синхронизации процессов;
  4.  обеспечение механизмов для взаимодействия процессов.

Управление основной памятью

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

  1.  ведет учет того, какая часть памяти в настоящий момент занята;
  2.  принимает решение о загрузке процессов при освобождении пространства ОП;
  3.  распределяет и освобождает пространство ОП в соответствии с действующими стратегиями.

Управление внешней памятью

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

  1.  управление свободным пространством;
  2.  распределение памяти;
  3.  управление диском.

Подсистема управления устройствами ввода/вывода

Подсистема ввода/вывода состоит из:

  1.  системы кэширования - буферирования;
  2.  общего интерфейса драйверов устройств;
  3.  драйверов специализированных устройств.

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

Файл представляет собой набор взаимосвязанной информации, определенной при создании. Кроме собственно данных, файлы представляют программы, как в исходном, так и в объектном виде.

Подсистема ОС отвечает за следующие действия в связи с управлением файлами:

  1.  создание файлов;
  2.  создание и удаление подкаталогов;
  3.  поддержку операций для манипулирования с файлами и подкаталогами;
  4.  представление файлов во внешней памяти;
  5.  выгрузку файлов на другие внешние устройства.

Защита системы

Защита системы предполагает наличие механизма для управления доступом программ, процессов и пользователей к системным и пользовательским ресурсам.

Механизм защиты должен:

  1.  различать авторизованное и не авторизованное использование;
  2.  определить элементы управления, которые будут задействованы;
  3.  обеспечить средства реализации.

Сетевое обеспечение

Распределенная система - набор процессоров, которые не распределяют память или каждый процессор имеет свою локальную память. Процессоры в системе соединены посредством компьютерной сети и обеспечивают пользователям доступ к различным системным ресурсам, позволяющим:

  1.  увеличить скорость вычислений;
  2.  увеличить объем доступной информации;
  3.  повысить надежность.

Командный интерфейс системы

Множество команд в ОС предназначено для выполнения функций управления, которые обеспечивают:

  1.  создание и управление процессов;
  2.  управление вводом/выводом;
  3.  управление внешней памятью;
  4.  управление основной памятью;
  5.  доступ к файловой системе;
  6.  защиту;
  7.  поддержку работы сети.

Программа, которая вводит и интерпретирует команды управления, в различных системах имет разные названия:

  1.  интерпретатор управляющих карт;
  2.  процессор команд консолей;
  3.  shell ( в Unix).

Функцией команды является прием и выполнение введенного утверждения.

Сервисы операционных систем:

  1.  выполнение программ - способность системы загружать программу в память и выполнять ее;
  2.  операции ввода/вывода. Поскольку пользовательские программы не могут исполнять операции ввода/вывода непосредственно, ОС должна обеспечивать некоторые средства для их выполнения;
  3.  манипуляции с файловой системой выражаются в обеспечении способности читать, писать, создавать и удалять файлы;
  4.  взаимодействие и обмен информацией между выполняющимися процессами на одном компьютере или на различных системах, связанных посредством сети, осуществляется через распределенную память или передачу сообщений;
  5.  обнаружение ошибок - гарантия правильности вычислений посредством обнаружения ошибок в процессоре, памяти, устройствах ввода/вывода или в пользовательских программах.

3. Драйверы.

Драйвер

[править | править исходный текст]

Материал из Википедии — свободной энциклопедии

Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 12 марта 2013; проверки требуют 7 правок.

У этого термина существуют и другие значения, см. Драйвер (значения).

Дра́йвер (англ. driver, мн. ч. дра́йверы[1]) — компьютерная программа, с помощью которой другие программы (операционная система) получают доступ к аппаратному обеспечению некоторого устройства. Обычно с операционными системами поставляются драйверы для ключевых компонентов аппаратного обеспечения, без которых система не сможет работать. Однако для некоторых устройств (таких, как видеокарта илипринтер) могут потребоваться специальные драйверы, обычно предоставляемые производителем устройства.

В общем случае драйвер не обязан взаимодействовать с аппаратными устройствами, он может их только имитировать (например, драйвер принтера, который записывает вывод из программ в файл), предоставлять программные сервисы, не связанные с управлением устройствами (например, /dev/zero в Unix, который только выдаёт нулевые байты), либо не делать ничего (например, /dev/null в Unix и NUL в DOS/Windows).

Идеология построения драйверов[править | править исходный текст]

Операционная система управляет некоторым «виртуальным устройством», которое понимает стандартный набор команд. Драйвер переводит эти команды в команды, которые понимает непосредственно устройство. Эта идеология называется «абстрагирование от аппаратного обеспечения». Впервые в отечественной вычислительной технике подобный подход появился в серии ЕС ЭВМ, а такого рода управляющие программы назывались канальными программами.

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

  1.  Загрузка драйвера. Тут драйвер регистрируется в системе, производит первичную инициализацию и т. п.
  2.  Выгрузка. Драйвер освобождает захваченные ресурсы — память, файлы, устройства и т. п.
  3.  Открытие драйвера. Начало основной работы. Обычно драйвер открывается программой как файл, функциями CreateFile() в Win32 илиfopen() в UNIX-подобных системах.
  4.  Чтение.
  5.  Запись: программа читает или записывает данные из/в устройство, обслуживаемое драйвером.
  6.  Закрытие: операция, обратная открытию, освобождает занятые при открытии ресурсы и уничтожает дескриптор файла.
  7.  Управление вводом-выводом (англ. IO Control, IOCTL). Зачастую драйвер поддерживает интерфейс ввода-вывода, специфичный для данного устройства. С помощью этого интерфейса программа может послать специальную команду, которую поддерживает данное устройство. Например, для SCSI-устройств можно послать команду GET_INQUIRY, чтобы получить описание устройства. В Win32-системах управление осуществляется через API-функцию DeviceIoControl(). В UNIX-подобных — ioctl().

Интеграция драйверов[править | править исходный текст]

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

Сначала производители платформ поставляли набор отдельных драйверов для операционных систем, собранный на один носитель (обычно компакт-диск), Затем появились установочные пакеты, называвшиеся 4-in-1 и One touch, и позволявшие упростить установку драйверов в систему. При этом, как правило, можно выбрать либо полностью автоматическую установку всех драйверов, либо выбрать вручную нужные. Однако единого, устоявшегося термина долго не было.

Современный термин, описывающий такие наборы драйверов устройств — Board Support Package, или «пакет поддержки платформы». Помимо собственно драйверов, он может, как и прочие установочные пакеты, содержать модули операционной системы и программы.

Виртуальные драйверы[править | править исходный текст]

Виртуальные драйверы устройств представляют собой особый вариант драйверов. Они используются для эмуляции аппаратного устройства, особенно в средах виртуализации, например, когда программа DOS запускается на компьютере с Microsoft Windows или когда гостевая операционная система работает на хостинге Xen

4. Реестр.

Что такое реестр?

Реестр (registry) представляет собой иерархически организованную базу данных, которую ОС использует для запуска приложений, нахождения драйверов устройств plug-and-play и унаследованных устройств, установки профилей пользователей, системных правил и т.д.
Впервые реестр был использован в Windows 95, с тех пор он стал быстрее и лучше защищен от всевозможных ошибок.
Хотя реестр организован довольно понятным образом, он представляет собой сложную и обширную структуру.

История реестра

Реестр был создан потому, что с файлами INI, которые появились в Windows 3.x пользователям приходилось думать, какой файл INI за что отвечаети как изменить в нужном файле ту или иную настройку. Часто было трудно выяснить месторасположение таких файлов для нужной программы. Кроме того отсутсвовал способ определения того, какая програма связана с конкретным INI файлом. С другой стороны, редактировать такие файлы было намного легче чем реестр. Одним из самых важных различий между файлами INI и реестром - расположение файлов.

Где рассположены файлы реестра?

Реестр хранится в двух файлах: System.dat и User.dat. Файл Policy.pol содержит системные правила, которые имеют приоритет над любыми параметрами, указанными в реестре. Этот файл используется в сетевой или многопользовательской среде и не инсталируется по умолчанию.
Эти три файла находяться в папке с Windows. Если на данном компьютере несколько пользователею, то система создет несколько файлов 
User.dat.

Роль реестра

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

Реестр выполняет следующие основные функции:
 Отслеживает все системные устройства и их установки, включая такие ресурсы, как запросы на прерывания (IRQ) и номера каналов прямого доступа памяти (DMA).
 Работает как база данных, которая унифицирует функционирование приложений.
 Проверяет наличие необходимых драйверов для инсталируемого оборудования. При добавлении нового переферийного устройства Диспетчер конфигурации (Configuration manager) операционной системы помещает конфигурационные данные устройства в реестр.
 Предоставляет системные сервисы, которые необходимы для работы многих приложений.
 Обеспечивает запуск необходимого приложения при щелчке мышью
 Сохраняет информацию относящуюся к системным правилам, профилям пользователей и средствам администрирования.

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

Архитектура реестра

Информация, хранящаяся в иерархической базе данных реестра, собрана в разделы (key), которые содержат один или более подразделов (subkey). Каждый подраздел содержит параметры (value): 

раздел
   подраздел 1 | параметр
   подраздел 2
   подраздел 3 | параметр

Возможность создавать вложенные подразделы позволяет группировать параметры. В результате получается древовидная структура, которую можно просмотреть в Редакторе реестра (Registry editor). Каждый раздел (ветвь) соответствует определенному типу информации о пользователе, аппаратном обеспечении, приложении и т.д.


Замечание.
—————————————————————————————————————————————
Проводник использует ту же самую структуру для отображения иерархии каталогов файловой системы. Реестр можно сравнить с деревом каталогов: разделы и подразделы соответствуют каталогам в файловой системе, параметры соответствуют файлам. 
——————

5. Пакетный файл.

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

Осуществление запуска происходит так же, как и запуск других программ, имеющих расширение .EXE и .COM. Пакетные файлы или как их можно еще называть bat файлы необходимы для удобного взаимодействия пользователей с программными системами. В отличие от обычных программ, batch не содержит машинные коды, а только текст, интерпретируемый командным процессором DOS. Текст этот может представлять собой:

вызовы других пакетных файлов;

специальные команды для управления выдачей на экран;

обращения к исполнимым программам;

специальные команды для организации ветвлений и циклов;

метки.

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

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

Вообще в пакетный файл можно поставить любую команду, а некоторые из них, например, goto и for дают возможность выполнить обработку в пакетных файлах условиях. Таким образом, команда if дает возможность управлять, как вводом, так и выводом и запускать некоторые другие bat файлы.

Особое значение имеет файл autoexec.bat он предназначен для начальной настройки операционной среды при запуске.

      Используются пакетные файлы программистами для выполнения различных операций, которые очень часто встречаются в повседневной работе. К самым популярным можно отнести работу с реестром, резервное копирование папок и файлов по заданному интервалу времени, их переименование, удаление, фоновую печать и много другое. Удобен автозапуск по расписанию при архивации, копировании, сканировании против вирусов и так далее.

Для выполнения пакетным файлом многих системных действий нужно запускать файл с правами администратора.

6. Совместное использование ресурсов.

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

  1.  периферийные устройства, такие как диски, принтеры, плоттеры, сканеры и др.;
  2.  данные, хранящиеся в оперативной памяти или на внешних запоминающих устройствах;
  3.  вычислительная мощность (за счет удаленного запуска «своих» программ на «чужих»
  4.  компьютерах).

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

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

 




1. на тему- ldquo;Гостра гнійна інфекція.
2. Механика вагонов 4
3. Характеристика Греции.html
4. Галицко-Волынская Русь в XII - начале XIII в
5. Курсовая работа- Ліцензування підприємницької діяльності
6. Мотивация труда
7. Варіант 1 1.Природа та визначення міжнародної економічної діяльності
8. psychic.ru Оператуарная жизн
9. Лабораторна робота 3 РОЗРОБКА ДРУКОВАНОЇ ПЛАТИ Мета роботи- ознайомитись з можливостями середовища RES
10. а за рахунок коштів загального фонду 50 128 5
11. РЕФЕРАТ дисертації на здобуття наукового ступеня кандидата геологічних наук Львів ~
12. Знаходження МДНФ та МКНФ Синтез логічних пристроїв
13. Признаки и функциональные особенности бандитизма
14. Герой нашего времени как социально-психологический и философский роман
15. Хочется на миг назад вернуться В детство в отчий светлый дом И как прежде другу улыбнуться И пройти
16. тема сердца сердечный блок атровентрикулярная задержка
17. Вариант 6 Задача 1 В каждом варианте приведены поквартальные данные о кредитах от коммерческого банка на
18. Порядок слов в английском языке
19. Варіант ~ 1 Хiмiчна рiвновага
20. . Воспроизведение это непрерывность повторяемость производства На всех этапах экономического развития об