Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 8
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

База данных склада на Delphi + Схема БД
База данных - словарь терминов на Delphi + Пояснительная записка
Моделирование работы крупного аэропорта на GPSS + Пояснительная записка

Программная архитектура
С точки зрения программного обеспечения существуют три типа многопроцессорных систем: основанные на связке ведущий-ведомый, несимметричные и симметричные. Модель типа ведущий-ведомый (master-slave) является несимметричной [8], так как один из процессоров в системе играет роль ведущего (master), в то время как остальные являются подчиненными (slave).


Также может иметь смысл заглянуть на сайт plasticform.ru, ведь именно там можно узнать много нового на тему http://plasticform.ru/services/izgotovlenie_press-form/. Тема пресс-форма для литья может показаться на первый взгляд незначительной и даже не тематичной. Но стоит посетить сайт plasticform.ru, и тема пресс-форма для литья начинает проявлять себя с неожиданной стороны и вызывает всё больший интерес. Дело в том, что тема пресс-форма для литья очень подробно представлена на сайте plasticform.ru. Трудно найти более детальное освещение темы пресс-форма для литья чем это сделано на сайте plasticform.ru. Спасибо сайту plasticform.ru за такое доскональное преподнесение темы пресс-форма для литья.




В таких системах возможна ситуация, при которой только ведущий процессор обладает правом обработки ввода-вывода и получения прерываний от различных устройств. В некоторых случаях коды ядра выполняются только на ведущем процессоре, при этом остальные CPU могут быть заняты исключительно пользовательскими программами. При соблюдении таких условий упрощается разработка систем, но преимущества многопроцессорных архитектур используются далеко не в полной мере. Результаты тестов показали [1], что в системах UNIX тратится более 40% общего процессорного времени на выполнение в режиме ядра. Следовательно, наиболее приемлемым вариантом является
распределение подпрограмм ядра между несколькими процессорами.



В функционально несимметричных многопроцессорных системах различные подсистемы выполняются на отдельных процессорах. Например, на одном из процессоров могут работать сетевые процедуры, в том время как другой занят обработкой ввода-вывода. Такой вариант более подходит для специализированных систем, чем для систем общего применения, к которым относится UNIX. Одной из удачных реализаций модели является файловый сервер Auspex NS5000 [10].



Симметричная многопроцессорная обработка (symmetric multiprocessing, SMP) является наиболее популярной моделью выполнения. В системах, основанных на этой архитектуре, все процессоры равнозначны и разделяют между собой единственную копию кодов и данных ядра, а также обладают доступом к различным системным ресурсам, таким как память или периферийные устройства. В режиме ядра может функционировать каждый процессор. Пользовательский процесс может быть направлен диспетчером на выполнение на любой CPU системы. В этой главе мы будем описывать только системы, основанные на архитектуре SMP (если не указано иное).
Оставшаяся часть главы посвящена современным механизмам синхронизации, применяемым в однопроцессорных и многопроцессорных системах.
Проблема быстрого роста
При освобождении ресурса нитью происходит пробуждение всех остальных нитей, ожидавших объект. При этом только одна из них может занять ресурс, в то время как остальные нити обнаружат его заблокированным и снова перейдут в режим ожидания. Такой подход приводит к дополнительной загрузке системы, тратящей определенное время на возобновление работы нитей и контекстные переключения.
Описанная проблема не фатальна для однопроцессорных систем, поскольку в один момент времени текущим является только одна нить, которая может освободить ресурс. Однако в многопроцессорных архитектурах вероятно возникновение ситуации, когда несколько нитей, ожидавших освобождения ресурса, могут быть направлены планировщиком на выполнение одновременно на различных процессорах, что приведет к новой попытке получения этого ресурса всеми нитями. Такая ситуация получила название проблемы быстрого роста.
В случае если только одна нить оказалась заблокированной в ожидании ресурса, все равно между операциями восстановления работоспособного состояния нити и началом ее выполнения происходит определенная задержка. За этот промежуток времени ресурс может успеть занять совершенно' другая нить, что приведет к повторной блокировке первой нити. Если такая ситуация будет возникать часто, то она способна повлечь устаревание нити.
В текущих разделах вы увидели краткое описание проблем традиционной модели синхронизации, влияющих на корректную работу системы и ее производительность. Оставшаяся часть главы посвящена описанию механизмов синхронизации, подходящих как для однопроцессорных, так и для многопроцессорных систем.
Опубликовал katy July 06 2015 16:16:58 · 0 Комментариев · 2966 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Эффект лампы на р...
Delphi 2005 Секре...
Последнее загруж...
PDA версия сайта
Srinilist
Dynamic Titles дл...
Динамические за...
Email
Шаблон для новост...
Task Shedule
JanComp
Ehlib
Text effect
Основы программир...
Ics
Игра Car [Исходни...
Меню проводника в...
Java 2 - Эффектив...
Язык программиров...
DelphiX

Топ загрузок
Приложение Клие... 100793
Delphi 7 Enterp... 98016
Converter AMR<-... 20298
GPSS World Stud... 17059
Borland C++Buil... 14239
Borland Delphi ... 10373
Turbo Pascal fo... 7390
Калькулятор [Ис... 6080
Visual Studio 2... 5228
Microsoft SQL S... 3674
Случайные статьи
Казино Вулкан Плат...
NESSUS - современн...
Как освободить пам...
Безопастность Dial...
Уровень абстракции...
Отправить письмо н...
Монтирование NFS
Блоки работы с тра...
Установка адаптера...
Частные клиники Ка...
Сложные термы, или...
Вулкан на Андроид
Способы фильтрации...
Чтобы гарантироват...
Объединение путей.1
get(X)
ВВЕДЕНИЕ В СПИСКИ
Выполнение лаборат...
Блоки работы с гру...
ЭТАП 4. ПРИМЕР РЕА...
Программа выводит ...
Определение шаблон...
Примеры использова...
Чтобы найти номер ...
Пример сеанса рабо...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?