Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Операционные системы - Процессы и потоки
 
 автор: Alexx   (23.05.2007 в 22:43)   письмо автору
 
 

И так вопрос, что такое процессы и потоки

P.s из чего состоит процес и поток.

   
 
 автор: cheops   (24.05.2007 в 10:23)   письмо автору
 
   для: Alexx   (23.05.2007 в 22:43)
 

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

   
 
 автор: Alexx   (24.05.2007 в 11:38)   письмо автору
 
   для: cheops   (24.05.2007 в 10:23)
 

А можно в дебри углубиться по потокам?

   
 
 автор: cheops   (24.05.2007 в 12:12)   письмо автору
 
   для: Alexx   (24.05.2007 в 11:38)
 

А что вас конкретно интересует? Код, различие в операционных системах, эффективность, совместное использование ресурса параллельными потоками? Тема очень широкая - нужно бы сузить.

   
 
 автор: Alexx   (24.05.2007 в 13:22)   письмо автору
 
   для: cheops   (24.05.2007 в 12:12)
 

различие в операционных системах, эффективность,

Заранее спасибо.

   
 
 автор: Trianon   (24.05.2007 в 13:37)   письмо автору
 
   для: cheops   (24.05.2007 в 10:23)
 

> - это позволяет реализовать многозадачность в рамках одного потока.
в рамках одного процесса.

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

   
 
 автор: cheops (из кафе)   (24.05.2007 в 17:53)
 
   для: Trianon   (24.05.2007 в 13:37)
 

В процессами вроде везде одинаково, а с потоками в *NIX что-то не чисто - если честно что-то не помню в чём там дело, но все используют порождение новых процессов - это даже по спискам задач видно. Windows-приложения как правило заводят один процесс, который открывает кучу потоков, а UNIX-приложения плодят кучу потоков (иногда удручающее число).

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования