OSDev

для всех
Текущее время: 28 мар 2024, 14:11

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 47 ]  На страницу Пред.  1, 2, 3, 4, 5  След.
Автор Сообщение
СообщениеДобавлено: 22 фев 2015, 21:10 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1126
Ну так вам развиваться надо, рости над собой. А то так и будете всю жизнь делать 1 функцию с 1 кнопкой, которая 2+2 считает.
Есть задачи сложные есть задачи простые. Но не все умеют найти правильный,простой и быстрый подход к решению. А поэтому зачастую у них и получаются из простых задач сложные.
Простые задачи решать просто. А вот системные трудно. Основная трудность как о мне это выделить простые составные части. Неясны критерии не понятно что лишнее, а что нет.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 фев 2015, 22:22 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
pavia писал(а):
Зачем нужны потоки? Да потому что ...
А вообще да не нужны. Можно и процессами обойтись.

Да конечно можно. Но до тех пор, пока не возникла задача сообща обрабатывать один набор данных. Или (в рамках одного приложения) асинхронно реагировать на разные внешние раздражители.

pavia писал(а):
Программисту нужны простые инструменты. Потоки это один из них. Мы имеем параллельность при этом у нас нет защиты.

Потоки нужны не для защиты, вы неправильно понимаете предназначение потоков.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 фев 2015, 22:23 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
imsushka писал(а):
Yoda писал(а):
Ну если только вы не делаете простейшее встраиваемое решение... а так, сейчас даже в смартфонах потоки.

да там потоки ява машиной организованны.

Я ведь не спрашиваю, как они там организованы, я лишь констатирую, что потоки - довольно распространённое явление.

imsushka писал(а):
Yoda писал(а):
Тем более непонятно. А что если два логических адреса отображены на один физический? Тогда у вас даже для одной задачи внутри кеша предполагаются проблемы?

как они могут быть отображены на 1 физический ??? только мапированием, а мы договорились что мапирование не кешируется

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

imsushka писал(а):
какой новый код? у нас 1 задача
для 1 задачи и будет менятся содержимое кеша

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

imsushka писал(а):
как в микроядре все общаются ? СООБЩЕНИЯ !!!!!!!!!!!!!!!!!!!!!

Да не кричите вы так, я отлично слышу. Скажите, каким образом передаются сообщения? Что, кем и куда пишется и читается, - процесс опишите, пожалуйста.

imsushka писал(а):
Yoda писал(а):
Вот вы скажите, а в чём существенное преимущество вашей архитектуры над MIPS? Недостатки я уже увидел.

ну если гонять линукс то да никакого приимущества
но вот если микроядро ....

Я интересуюсь, в чём преимущества, а не при каких условиях они проявят себя.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 22 фев 2015, 23:33 

Зарегистрирован: 10 апр 2012, 23:19
Сообщения: 277
давай новые архитектуды двигать

вот это двинули.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 фев 2015, 00:42 

Зарегистрирован: 10 апр 2012, 23:19
Сообщения: 277
pavia писал(а):
Есть задачи сложные есть задачи простые. Но не все умеют найти правильный,простой и быстрый подход к решению.

просто найти инфу на оборудование очень сложно, и если найдёшь врят ли сможешь её понять.

а вы батаники сидите и ничего не говорите.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 фев 2015, 05:38 

Зарегистрирован: 21 фев 2015, 10:39
Сообщения: 50
Цитата:
Я ведь не спрашиваю, как они там организованы, я лишь констатирую, что потоки - довольно распространённое явление.

ну они ж реализованы программно, не аппаратно
значит их можно сделать везде

Цитата:
Так, простите, что означает "мапирование не кешируется"? "Мапирование" - это отображение логического адреса на физический. Оно по определению присутствует, если у вас виртуальная память. Вот я и спрашиваю, что будет, если два разных логических адреса отображены на один физический?

зачем 1 задаче одна страница по двум адресам ?
мапирование - отображение 1 физической страницы двум или более задачам


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

если у нас 1 задача и 1 процессор - проблема будет ?


Цитата:
Да не кричите вы так, я отлично слышу. Скажите, каким образом передаются сообщения? Что, кем и куда пишется и читается, - процесс опишите, пожалуйста.

а я не знаю :)
я на сообщениях и тормознулся когда ось писал
точнее я тормознулся на всем IPC
соответсвенно в железе тоже не реализовал


Цитата:
Я интересуюсь, в чём преимущества, а не при каких условиях они проявят себя.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 фев 2015, 05:58 

Зарегистрирован: 21 фев 2015, 10:39
Сообщения: 50
вот чо я хотел реализовать


Вложения:
[3os] Шины сообщений 1.txt [3.35 КБ]
Скачиваний: 642
[3os] Шины сообщений.txt [2.33 КБ]
Скачиваний: 603
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 фев 2015, 13:35 

Зарегистрирован: 31 окт 2011, 18:20
Сообщения: 230
Цитата:
да там потоки ява машиной организованны.

Цитата:
ну они ж реализованы программно, не аппаратно
значит их можно сделать везде

Смартфоны с явой - это преимущественно Android. Вот и отвечу на примере Андройда.
Во-первых, потоки - это не некая "магия явы", а обыкновенные потоки Linux'а. Исходник андройда с именем Thread.cpp на 67 строке содержит прямое указание на это:
Цитата:
All threads are native pthreads.

И если на андройде сделать ls /proc/pid/task, то можно увидеть, что андройд-приложения генерируют огромное количество нативных линуксовых потоков. Так что ява-машина попросту сделала классы-обёртки, содержащие информацию о нативных потоках, вот и всё. Вся реализация по-прежнему находится в ядре ОС.
Ну а во-вторых - ясен пень, что не аппаратно. Потоки нигде не сделаны аппаратно. Но везде (почти) сделаны в нулевом кольце, в ОС. Ручная реализация потоков породит две больших проблемы. Первая - всем приложениям придется изобретать велосипед свой менеджер потоков и механизм переключения, а это значит, что появится очередная пачка конкурирующих библиотек для многопоточности, впустую занимающих место. Вторая (более серьёзная) - даже если на процессоре 16 ядер, задача все равно не сможет работать больше, чем на одном ядре, и вся многопоточность однозначно сведется к вытесняющему диспетчеру, благодаря чему во многих ситуациях 15 из 16 ядер компьютера будет простаивать.
Цитата:
Потоки нужны не для защиты, вы неправильно понимаете предназначение потоков.

Сей господин уже приравнивал потоки к процедурам, так что ничего удивительного.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 фев 2015, 14:01 

Зарегистрирован: 21 фев 2015, 10:39
Сообщения: 50
Bargest писал(а):
Цитата:
Потоки нужны не для защиты, вы неправильно понимаете предназначение потоков.

Сей господин уже приравнивал потоки к процедурам, так что ничего удивительного.

хорошо что это не обо мне

так нужен поток параленьный? ну заводи 2 задачу с мапированной общей памятью данных, объяви эту область не кешируемой (в 1 уровня кеше) и наслаждайся жизнью

в анроиде - незнам
можно скрин процессов запущеных

то что я примеры посмотрел - там эвенты заменили потоками


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 23 фев 2015, 16:26 

Зарегистрирован: 31 окт 2011, 18:20
Сообщения: 230
Цитата:
хорошо что это не обо мне

А вспомните один из своих предыдущих постов.;-)
Цитата:
ну заводи 2 задачу с мапированной общей памятью данных, объяви эту область не кешируемой (в 1 уровня кеше) и наслаждайся жизнью

Ага, и мы получаем 900 отдельных задач (по числу потоков в системе, например, у меня), под каждую создаем свои таблицы преобразования адресов и бодаемся с межпроцессным взаимодействием, вместо того, чтобы просто запускать составные части одной задачи в одном ВАП.
Цитата:
можно скрин процессов запущеных

Скрин чего конкретно?
Код:
adb shell
su
ps
ls /proc/<pid>/task

И будет выведен список потоков процесса <pid>. Вы увидите пачку разных ID-шников. Скрин этого хотите или чего-то другого? Вот:
Изображение


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 47 ]  На страницу Пред.  1, 2, 3, 4, 5  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB