рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Принципы функционирования ЭВМ. Учебное пособие по курсам «Технология программирования» и «Операционные системы»

Принципы функционирования ЭВМ. Учебное пособие по курсам «Технология программирования» и «Операционные системы» - раздел Компьютеры, 125Крылов Ев., Типикин Н.г. Принципы Функционирования Эвм. Учебное Пособие По...

125Крылов ЕВ., Типикин Н.Г. Принципы функционирования ЭВМ. Учебное пособие по курсам «Технология программирования» и «Операционные системы» для заочного отделения. - Обнинск: ИАТЭ, 2002.- 134 с.

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

 

Илл. 41, библиограф. 4 наим.

 

Рецензенты: к.т.н., Е.А.Пивненко,

В.Л.Миронович

 

Темплан 2001 г., поз..

 

Ó Обнинский институт атомной энергетики, 2001 г.

Ó Е.В. Крылов, Н.Г. Типикин, 2001 г.


ВВЕДЕНИЕ

В связи со стремительным развитием вычислительной техники, мы сегодня изучаем то, что завтра будет либо не очень нужно, либо совсем не нужно. Чтобы обучение было целенаправленным и целесообразным, нужно выделять фундаментальные элементы образования, исходя из целей обучения. Кафедра АСУ готовит, главным образом, специалистов по информатике, однако значительный процент выпускников кафедры становится профессионалами программирования. Тем и другим нужно точное, без мистики представление о принципах функционирования ЭВМ. Первым это нужно для грамотного использования ЭВМ в качестве инструмента, для других - будущих программистов - это явится введением в специальность.

Желаем успеха!

Дать определение такому явлению как ЭВМ представляется сложным. Достаточно сказать, что само по себе название ЭВМ, т.е. электронные вычислительные машины не отражает полностью сущность концепции. Слово “электронные” подразумевало электронные лампы в качестве элементной базы, современные ЭВМ правильнее следовало бы называть микроэлектронными. Слово “вычислительный” подразумевает, что устройство предназначено для проведения вычислений, однако анализ программ показывает, что современные ЭВМ не более 10 - 15% времени тратят на чисто вычислительную работу - сложение, вычитание, умножение и т. д. Основное время затрачивается на выполнение операций пересылки данных, сравнения, ввода - вывода и т. д. Тоже самое относится и к англоязычному термину “компьютер”, т.е. “вычислитель”.

Громадные возможности накопления информации, скоростные качества поиска и обработки данных, удобные средства модификации сделали ЭВМ уникальным техническим средством организации информационных систем.

К понятию ЭВМ можно подходить с нескольких точек зрения.

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

Если же рассматривать ЭВМ как ядро некоторой информационно-вычислительной системы, то полезно показать информационную модель ЭВМ - определив ее в виде совокупности блоков переработки информации и множества информационных потоков между этими блоками. Такую модель мы приведем в приложении. Подобные модели обладают большой универсальностью. Они позволяют описывать как ЭВМ, так и системы, созданные на основе ЭВМ.

ЭВМ нельзя воспринимать только как аппаратные средства. Управление осуществляется с помощью программ. Поэтому составить логичное представление возможно только, если видеть аппаратно-программную совокупность.

Мы будем применять модельный принцип: можно огрублять, но без вранья. Авторы не стремятся описывать детали какой - либо конкретной ЭВМ, приводя, по возможности, общие принципы организации.

 


ПРИНЦИПЫ ФОН НЕЙМАНА

§ основными блоками фоннеймановской машины являются блок управления, арифметико-логическое устройство, память и устройства ввода – вывода; § информация кодируется в двоичной форме и разделяется на единицы, называемые… § алгоритм представляется в форме последовательности управляющих слов, которые определяют смысл операции; эти…

СОСТАВ И ФУНКЦИОНИРОВАНИЕ МИНИМАЛЬНОЙ ЭВМ С ШИННОЙ ОРГАНИЗАЦИЕЙ

Устройство управления (УУ) - часть центрального процессора (ЦП), вырабатывает последовательность управляющих сигналов, обеспечивающих выборку и… В простейшем случае УУ имеет в своем составе три устройства - регистр команды,…

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

Еще большее изумление у человека, незнакомого с вычислительной техникой, вызывает тот факт, что все разнообразие решаемых на ЭВМ задач реализуется с помощью небольшого набора очень простых команд. Система команд у типичной ЭВМ включает в себя всего 60 - 150 базовых команд. Все команды, в основном, служат для выполнения очень простых действий, таких как, прочитать, запомнить, сложить, сдвинуть, сравнить, и т. д. Интеллектуальность ЭВМ достигается за счет того, что ЭВМ способна выполнять программы, состоящие из большого числа таких простых действий с огромной, недостижимой для человека скоростью.


КОМАНДЫ ЭВМ

При описании системы команд ЭВМ обычно принято классифицировать команды по функциональному назначению, длине, способу адресации и другим признакам.… Команды передачи данных.Данная группа команд включает в себя подгруппы команд… Команды обработки данных.Данную группу команд с точки зрения выполняемых над данными операций можно подразделить на…

СРАВНИТЬ A и B

ПЕРЕЙТИ ЕСЛИ БОЛЬШЕ К АДРЕСУ L .

Команды для работы с подпрограммами. Стеки.В практике программирования широко используется такой прием, как организация подпрограмм. Подпрограмма… Для организации подпрограмм большинство ЭВМ используют аппаратно… При организации работы с подпрограммами для сохранения адреса возврата используется стек. Команды вызова подпрограмм…

СИСТЕМНЫЕ ИНТЕРФЕЙСЫ С ИЗОЛИРОВАННОЙ И ОБЩЕЙ СИСТЕМОЙ ШИН

Несмотря на многообразие типов ЭВМ по способу организации взаимодействия между процессором, памятью и периферийными устройствами в машинах с шинной… 1. Двухшинная организация, или интерфейс с изолированной системой шин. Такую… Данный тип организации интерфейса иллюстрируется на рис. 6. Характерной его особенностью является раздельная адресация…

СПОСОБЫ ОБМЕНА ДАННЫМИ В МАШИНАХ С ШИННОЙ ОРГАНИЗАЦИЕЙ. МЕХАНИЗМ ПРЕРЫВАНИЙ

Для обеспечения согласования системной шины и внешнего устройства по скорости работы и способу представления данных каждое внешнее устройство… Таким образом, процессор теперь может передать в контроллер команды и данные,… Как мы уже показали, возможно большое разнообразие в способах реализации системы шин в ЭВМ. Несмотря на это, в машинах…

Программно - управляемый обмен данными

Обычно один из битов регистра команд и состояний используется для индикации готовности устройства. Он устанавливается, если устройство готово к… Теперь можно описать алгоритм программно - управляемого обмена данными между… 1.Запустить внешнее устройство. Для этого необходимо вывести в регистр команд и состояний контроллера устройства…

Обмен по прерываниям

Некоторый человек сидит в кресле и читает книгу. В это время на кухонной плите что-то готовится, и, кроме того, его приятель должен позвонить по… Вдруг звенит телефонный звонок. Звук звонка является сигналом, который… Человек подходит к телефону и начинает разговор с приятелем. В это время на кухне закипает чайник. “Что там такое? Ах,…

Внепроцессорный прямой доступ к памяти

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

И ЕЩЕ О ПРЕРЫВАНИЯХ

При работе процессора возможны ситуации, когда по некоторой причине нормальная работа центрального процессора по выполнению программы становится… Неверно было бы думать, что нештатные ситуации могут возникать только из-за… Из анализа действий процессора при восприятии прерывания следует, что они очень похожи на действия при вызове…

РЕЖИМЫ АДРЕСАЦИИ

a)определять полный адрес памяти меньшим числом бит, тем самым, сокращая длину команды; b)обращаться к ячейкам памяти, адреса которых вычисляются во время выполнения… c)вычислять адрес памяти относительно позиции команды или относительно другого объекта таким образом, что программу…

ИЕРАРХИЧЕСКАЯ ОРГАНИЗАЦИЯ ПАМЯТИ

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

Кэш-память

Рассмотрим способы организации кэш-памяти, принятые в современных ЭВМ. Опишем возможные способы отображения адресов данных в оперативной памяти на… Существуют три основных способа организации кэш-памяти: 1) кэш с прямым… В случае кэша с прямым отображением адрес, формируемый процессором, имеет вид, показаный на рис 18 а). Адрес состоит…

Страничная организация виртуальной памяти

Управление различными уровнями памяти осуществляется программами ядра операционной системы, которые следят за распределением страниц и оптимизируют… Для увеличения эффективности такого типа схем в процессорах используется… Поиск в таблицах страниц, расположенных в основной памяти, и загрузка TLB может осуществляться либо программным…

Сегментная организация виртуальной памяти

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

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

ФОРМАТЫ ДАННЫХ

Минимальная хранимая единица данных в двоичной машине называется бит (от английского BInary digiT - двоичная цифра), совокупность из восьми битов… Поле фиксированной длины считается выравненным на границу, если его адрес… Беззнаковое целое n-битное число X может принимать значения в диапазоне 0<=X<=2n -1, где n - количество бит в…

ИНФОРМАЦИОННАЯ МОДЕЛЬ ЭВМ

- хранение двоичной информации; - передача от одного хранилища к другому; - преобразование.

КОНВЕЙЕРНАЯ ОРГАНИЗАЦИЯ ЭВМ

Простейший конвейер, производительность конвейера

В первом случае существует несколько независимых исполни­тельных устройств, каждое из которых самостоятельно выполняет действия по обработке «своих»… Второй подход носит название конвейерной обработки. Этот подход аналогичен… В качестве примера рассмотрим некоторый абстрактный процес­сор, имеющий типичные черты многих современных…

Структурные конфликты

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

Конфликты по данным

ADD R1,R2,R3 ; в регистр R1 помещается сумма R2 и R3 SUB R4,R2,R1 ; регистр R4 равен разности R1 и R2 MUL R5,R1,R6 ; регистр R5 равен разности R1 и R6 .

Сокращение потерь на выполнение команд перехода и минимизация конфликтов по управлению

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

ЭВМ С КАНАЛЬНОЙ ОРГАНИЗАЦИЕЙ

Упрощенная схема организации ЭВМ с каналами приведена на рис. 32. Сравним схему ЭВМ с каналами и описанную выше схему ЭВМ с шинной организацией. Все фоннеймановские ЭВМ очень похожи друг на друга и алгоритм функционирования центрального процессора, по сути, ничем…

ПРИМЕР ОРГАНИЗАЦИИ ПОТОКА ИНФОРМАЦИИ

Для специалистов, занимающихся обработкой информации, существенное значение имеет понятие потока информации (см. раздел «Информационная модель ЭВМ»). Предполагается наличие двух хранилищ информации, между которыми организуется информационный обмен по каналам связи. В процессе обмена в канале связи возникает поток информации.

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

Диск состоит из k цилиндров. Каждый цилиндр содержит n треков. На каждом треке располагается p секторов. Каждый сектор содержит фиксированное количество байт информации, чаще всего 512. Сектор может считываться или записываться только целиком. Перед выполнением операции записи информация должна быть сосредоточена во внутреннем буфере контроллера диска. Команда записи переносит информацию из буфера в сектор. Команда чтения выполняется в обратном порядке. Операция чтения сектора во встроенный буфер выполняется контроллером. Для поиска нужного сектора контроллер должен содержать трехмерный адрес, состоящий из номера цилиндра, номера трека в цилиндре и номера сектора на треке. Контроллер осуществляет перемещение позиционера к нужному цилиндру, выбор трека и в процессе вращения цилиндра переносит нужный сектор во встроенный буфер. Начало обменной операции готовит процессор, выполняя ряд установок регистров контроллера диска Эта операция носит название «программирование контроллера». После того, как контроллер перенесет сектор во встроенный буфер, возможны различные варианты организации обмена: прямой доступ, обмен по прерыванию, опрос внешнего устройства.

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

На рис. 35 показана схема передачи, находящаяся в исходном состоянии. Здесь Buf1 - буфер контроллера диска, куда перемещается сектор диска. Buf2 - буфер диска, соединенный с шиной. Buf3 - буфер контроллера оперативной памяти, соединенный с шиной. Buf4 - буфер контроллера оперативной памяти, накапливающий обменное слово. Буфер - область оперативной памяти, куда перемещается информация.

В регистрах контроллера диска находится трехмерный адрес нужного сектора. Этот сектор находится и переносится в буфер контроллера целиком. При чтении выполняется вертикальный контроль по контрольному разряду, горизонтальный контроль по байту четности и контроль по циклической контрольной сумме. Если какой-нибудь контроль не проходит, на шину выставляется сигнал прерывания и обменная операция прекращается. Если все виды контроля завершаются успешно, информация сектора появляется во встроенном буфере Buf1 (рис. 35). В этот момент начинается передача в буфер Buf2.(рис. 36).

В буфер Buf2 информация заносится с контрольным разрядом. Значение контрольного разряда равно сумме информационных разрядов по модулю 2 плюс 1. Это означает что количество единиц, включая контрольный разряд нечетно. Как только передача в буфер завершается, контроллер захватывает шину, если она свободна, и передает в шину содержимое буфера, включая контрольный разряд. На шине устанавливается сигнал занятости. Буфер свободен и он заполняется следующей парой символов (рис. 37). Любая часть схемы активизируется по запросу слева, если справа свободно.

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

Как только Buf2 заполнится. устанавливается сигнал запроса шины. Когда шина освободится, информация передается в шину, Buf2 освобождается и принимает следующую пару символов (Рис. 38).

Контроллер оперативной памяти ведет обмен с оперативной памятью порциями, которые называются машинным словом. Как правило, размер машинного слова отличается от разрядности шины. Необходим еще один буфер (Buf4). Предположим, размер машинного слова 4 байта. Как только информация в Buf3 будет принята, устанавливается запрос на передачу в Buf4 (рис. 39). Байты 1 и 2 передаются, Buf3 освобождается и готов принять следующую порцию из шины.

Как только из шины в Buf3 будут приняты байты 3 и 4, осуществляется их передача в Buf4 (Рис. 40). Когда в Buf4 появятся 4 байта, контроллер оперативной памяти начинает передачу в оперативную память. Для этой операции он должен получить адрес оперативной памяти. Существуют две возможности. Первая: адрес поступает по адресной шине с каждой порцией информации. Вторая: адрес поступает вначале обменной операции. Существуют схемы, позволяющие в процессе обмена разбросать сектор по нескольким адресам оперативной памяти. В этом случае по адресной шине периодически поступает новый адрес буфера.

Когда передача в оперативную память завершена (Рис. 41), Buf4 свободен и обмен продолжается.

Когда все 512 байт будут переданы в шину и шина освободится, контроллер внешнего устройства устанавливает на шине сигнал прерывания. По этому сигналу центральный процессор определит завершение обмена.

 


ЛИТЕРАТУРА

1.Балашов Е.П., Григорьев В.Л., Петров Г.А. Микро- и миниЭВМ. Учебн. пос. для вузов. - Л.: Энергоатомиздат, 1984. - 376 с.

2.Ларионов А.М., Майоров С.А., Новиков Г.И. Вычислительные комплексы системы и сети. Учебн. для вузов. - Л.: Энергоатомиздат, 1987. - 288 с.

3.Вычислительная система IBM 360. Принципы работы/Пер. с англ./Под ред. В.С. Штаркмана. - М.: Советское радио, 1969. - 440 с.

4.Дж. Джермейн. Программирование на IBM 360/ Пер. с англ./Под ред. В.С. Штаркмана. - М.: Мир, 1971. - 870 с.

 


ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ…………………………………………………………….3

ПРИНЦИПЫ ФОН НЕЙМАНА…………………………………….5

СОСТАВ И ФУНКЦИОНИРОВАНИЕ МИНИМАЛЬНОЙ ЭВМ С ШИННОЙ ОРГАНИЗАЦИЕЙ……………………………………7

КОМАНДЫ ЭВМ……………………………………………………18

СИСТЕМНЫЕ ИНТЕРФЕЙСЫ С ИЗОЛИРОВАННОЙ И ОБЩЕЙ СИСТЕМОЙ ШИН………………………………………25

СПОСОБЫ ОБМЕНА ДАННЫМИ В МАШИНАХ С ШИННОЙ ОРГАНИЗАЦИЕЙ. МЕХАНИЗМ ПРЕРЫВАНИЙ…………..…29

1. Программно - управляемый обмен данными………..31

2. Обмен по прерываниям………………………………….34

3. Внепроцессорный прямой доступ к памяти………...44

И ЕЩЕ О ПРЕРЫВАНИЯХ………………………………………..54

РЕЖИМЫ АДРЕСАЦИИ…………………………………………...59

ИЕРАРХИЧЕСКАЯ ОРГАНИЗАЦИЯ ПАМЯТИ……………….67

Кэш память………………………………………………..…72

Страничная организация виртуальной памяти……….79

Сегментная организация виртуальной памяти……….82

Процесс переадресации виртуальной памяти………...84

ФОРМАТЫ ДАННЫХ………………………………………………87

ИНФОРМАЦИОННАЯ МОДЕЛЬ ЭВМ………………………….92

КОНВЕЙЕРНАЯ ОРГАНИЗАЦИЯ ЭВМ………………………...97

Простейший конвейер, производительность конвейера…………………………………………………….97

Структурные конфликты…………………………………101

Конфликты по данным……………………………………105

Сокращение потерь на выполнение команд перехода и минимизация конфликтов по управлению…………...112

ЭВМ С КАНАЛЬНОЙ ОРГАНИЗАЦИЕЙ……………………...118

ПРИМЕР ОРГАНИЗАЦИИ ПОТОКА ИНФОРМАЦИИ…….124

ЛИТЕРАТУРА……………………………………………………..132

ОГЛАВЛЕНИЕ…………………………………………………….133

 

– Конец работы –

Используемые теги: нципы, функци, рования, ЭВМ, Учебное, пособие, курсам, Технология, программирования, операционные, системы0.129

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Принципы функционирования ЭВМ. Учебное пособие по курсам «Технология программирования» и «Операционные системы»

Что будем делать с полученным материалом:

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

Еще рефераты, курсовые, дипломные работы на эту тему:

Лекция 1. Тема: Операционная система. Определение. Уровни операционной системы. Функции операционных систем. 1. Понятие операционной системы
Понятие операционной системы... Причиной появления операционных систем была необходимость создания удобных в... Операционная система ОС это программное обеспечение которое реализует связь между прикладными программами и...

Введение в операционные системы. Определение, назначение, состав и функции операционных систем
Государственное образовательное учреждение высшего профессионального образования... ТОЛЬЯТТИНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СЕРВИСА...

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

Экзаменационные вопросы к экзамену по дисциплине Операционные системы, среды и оболочки 1. Общие сведения и об операционных системах. Назначение и функции
Общие сведения и об операционных системах Назначение и функции... Операционная система ОС это упорядоченная последоват системных управляющих программ совместно с необходимыми...

Экономическое содержание и механизм функционирования ссудного процента Экономическое содержание и механизм функционирования ссудного процента
С развитием в нашей стране рыночных отношений, появлением предприятий различных форм собственности (как частной, так и государственной,… У предприятий всех форм собственности все чаще возникает потребность… Ссудный процент возникает там, где отдельный собственник передает другому определенную стоимость во временное…

Системы программирования и операционные системы
Обработчик должен иметь механизм выгрузки из оперативной памяти встроенный в него самого. Также программа должна иметь защиту от повторной установки в оперативную… Такие программы носят названия программ, резидентных в памяти Terminate and Stay Resident, TSR, или просто резидентных…

Смирнова Н.Н. Операционная система Линукс: начальный курс пользователя. Учебное пособие Смирнова, Панова, Касаткина БГТУ 2007
Список литературы... Учебники... Энди Таненбаум Современные операционные системы е е издание...

Лекция №2. Системы бронирования и резервирования. Зарубежные системы бронирования
ПЛАН... Характеристики компьютерных систем бронирования и резервирования... Системы бронирования Amadeus Galileo Worldspan Sabre...

Лекции по дисциплине Устройство и функционирование информационных систем Раздел 1. Информационные системы. Основные понятия и классификация
Раздел Информационные системы Основные понятия и классификация... Тема Информационные системы Основные понятия и... В данной теме рассматриваются общие понятия относящиеся к операционным системам определяются их типы и базовые...

0.037
Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • По категориям
  • По работам