русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Потоки. Мультипрограммирование на уровне потоков


Дата добавления: 2013-12-23; просмотров: 910; Нарушение авторских прав


Лекции 12-16

Http://www.google.com

Международные

Российские

1. Яндекс – http://www.yandex.ru

2. Rambler- http://www.rambler.ru

3. Апортhttp://www.aport.ru/

4. @Rushttp://www.atrus.ru

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

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

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



Рис. 2.24. Схема реализации модемной связи

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



Рис. 2.25 Внешний модем

Потоки. Мультипрограммирование на уровне потоков

Организация взаимодействия процессов. Основные понятия

Общая характеристики связи между процессами

Конкуренция процессов в борьбе за ресурсы. Основные понятия и проблемы

Синхронизация процессов и потоков. Основные понятия и проблемы

Семафоры, мьютексы. Использование семафоров для синхронизации процессов

 

 

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



 

В настоящее время в большинстве операционных систем определены два типа единиц работы.

Более крупная единица работы – процесс.

 

С помощью процессов удается обеспечить псевдопараллельное (при однопроцессорной вычислительной системе) или параллельное (при многопроцессорной вычислительной системе) выполнение заданий

Но дело в том, что приложение (задание) может обладать внутренним параллелизмом, использование которого потенциально может ускорить вычисления.

 

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

 

И нужна более мелкая единица работы чем процесс - «поток», или «нить» (threads).

 

В Windows поддерживаются еще более мелкая единица работы - волокна (fibers).

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

 

Подобно процессам потоки в системе описываются структурой данных, которую обычно называют блоком управления потоком (thread control block, TCB).

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

 

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

 

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

Создание потоков требует от ОС меньших накладных расходов, чем процессов.

 

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

 

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

Обычно различные потоки совместно используют следующие ресурсы процесса:

 



<== предыдущая лекция | следующая лекция ==>
Американские | Все потоки одного процесса используют общие файлы, таймеры, устройства, одну и ту же область оперативной памяти, одно и то же адресное пространство.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.