|
Пишу ОС РВ, Вот пишу ОС Реального времени, у какого какие предложения? пожелания? |
|
|
|
 |
Ответов
|
Jan 28 2009, 13:55
|

embarrassed systems engineer
    
Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038

|
Цитата(zltigo @ Jan 28 2009, 15:38)  Так я в общем-то это и делаю, точнее лучше  , для текущей задачи задачи известен указатель на ее Task Control Block он и сохраняется в менеджером памяти в Memory Control Block. Я вот тут как-то задумался - у меня потребность знать какая задача выделила память редко возникает. Под Windows - в User Mode ОС сама следит и чистит, в Kernel Mode драйверу обычно тоже все равно какой контекст. В простых ОС для embedded понятие задача вообще упрощено и сведено до потока - в системных сервисах запоминать TCB тоже не особо нужно. Я как-то стараюсь привязать память к объекту который ее использует, а не к потоку. Например, сокет TCP - создается, живет, для него выделяются pbuf-ы, ведется четкий учет, квотирование, в самом pbuf есть ссылка на socket-владелец. А вот TCB - нету. Сокет может быть создан в одном потоке, выполнять обмен в совершенно другом, и завершить свою жизнь в третьем. И какой смысл помнить какой поток выделял для него pbuf? Аналогично для USB pipe - вся память "записана на владельца" - структуру описывающую pipe, и поля TCB там тоже как-то нету. Конечно, это не значит в общем случае что TCB знать не полезно, просто подход, наверное, другой.
|
|
|
|
|
Jan 28 2009, 14:04
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(VslavX @ Jan 28 2009, 16:55)  Например, сокет TCP - создается, живет, для него выделяются pbuf-ы, ведется четкий учет, квотирование, в самом pbuf есть ссылка на socket-владелец. Значит там хранится не указатель на TCB, а на то, что хотите. Более того, что на самом деле у меня, например, для блока памяти выделенного очереди там на автомате сохраняется, естественно указатель на Queue Control Block. Ну а в самом QCB уже TCB  .
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
Сообщений в этой теме
ddiimmaa Пишу ОС РВ Jan 27 2009, 22:58 sergeeff Это для общего развития или сейчас творческий прос... Jan 28 2009, 00:35 ddiimmaa Цитата(sergeeff @ Jan 28 2009, 04:35) Это... Jan 28 2009, 17:15  zltigo Цитата(ddiimmaa @ Jan 28 2009, 20:15) Мож... Jan 28 2009, 17:39  VslavX Посмотрите TN Kernel
Написана на чистом C, "п... Jan 28 2009, 17:42   ddiimmaa Цитата(VslavX @ Jan 28 2009, 21:42) Посмо... Jan 28 2009, 20:47    VslavX Цитата(ddiimmaa @ Jan 28 2009, 22:47) пос... Jan 28 2009, 23:29     AlexandrY В RL ARM у TCB размер 12 слов, а по функционалу о... Jan 29 2009, 11:44      VslavX Цитата(AlexandrY @ Jan 29 2009, 13:44) В ... Jan 29 2009, 16:02     ddiimmaa Цитата(VslavX @ Jan 29 2009, 03:29) Ужима... Jan 29 2009, 20:40      zltigo Цитата(ddiimmaa @ Jan 29 2009, 23:40) Стр... Jan 29 2009, 20:56       ddiimmaa Цитата(zltigo @ Jan 30 2009, 00:56) Потом... Jan 29 2009, 22:14        zltigo Цитата(ddiimmaa @ Jan 30 2009, 01:14) И р... Jan 29 2009, 23:29      VslavX Цитата(ddiimmaa @ Jan 29 2009, 22:40) Стр... Jan 30 2009, 08:16       AlexandrY Что то непонятны ваши потуги интуитивно выразить ... Jan 30 2009, 09:43        VslavX Цитата(AlexandrY @ Jan 30 2009, 11:43) Чт... Jan 30 2009, 13:08         ddiimmaa Цитата(VslavX @ Jan 30 2009, 17:08) топик... Jan 31 2009, 01:20          VslavX Цитата(ddiimmaa @ Jan 31 2009, 03:20) но ... Jan 31 2009, 07:55           AlexandrY Да, тема портирования высокомерно замалчивается, х... Jan 31 2009, 11:18            AlexandrY Кстати копнув глубже в архитектуру ARMv7-M (ядро C... Feb 1 2009, 19:44            ddiimmaa Цитата(AlexandrY @ Jan 31 2009, 15:18) На... Feb 3 2009, 08:51             aaarrr Цитата(ddiimmaa @ Feb 3 2009, 11:51) а на... Feb 3 2009, 09:12              ddiimmaa Цитата(aaarrr @ Feb 3 2009, 13:12) Сильно... Feb 4 2009, 20:37               aaarrr Цитата(ddiimmaa @ Feb 4 2009, 23:37) А се... Feb 4 2009, 20:48                ddiimmaa Цитата(aaarrr @ Feb 5 2009, 00:48) Это за... Feb 6 2009, 17:38                 aaarrr Цитата(ddiimmaa @ Feb 6 2009, 20:38) Дааа... Feb 6 2009, 17:51                  ddiimmaa Цитата(aaarrr @ Feb 6 2009, 21:51) Сначал... Feb 14 2009, 14:17                   aaarrr Цитата(ddiimmaa @ Feb 14 2009, 17:17) В т... Feb 14 2009, 14:57                    ddiimmaa Цитата(aaarrr @ Feb 14 2009, 18:57) Компи... Feb 14 2009, 20:47                     aaarrr Цитата(ddiimmaa @ Feb 14 2009, 23:47) Или... Feb 14 2009, 21:54                      ddiimmaa Вчера я выложил в Интернет более менее работаюшую ... Feb 15 2009, 14:39                 VslavX Цитата(ddiimmaa @ Feb 6 2009, 19:38) miTR... Feb 7 2009, 07:56                  dxp Цитата(VslavX @ Feb 7 2009, 13:56) Имхо, ... Feb 7 2009, 14:32                   AlexandrY Обратно никогда не хочется!
Став все время раб... Feb 7 2009, 14:57                    VslavX Цитата(AlexandrY @ Feb 7 2009, 16:57) Обр... Feb 7 2009, 23:09                     yuri_t IMXO, у С++ наиболее полезные вещи -это наследован... Feb 8 2009, 08:00 MrYuran А scmRTOS?
Вроде бы как раз, для дохленьких контро... Jan 28 2009, 05:40 AlexandrY Ну покажите класс. Кто вас знает, мож вы гений. ... Jan 28 2009, 07:40 zltigo Цитата(AlexandrY @ Jan 28 2009, 10:40) Вт... Jan 28 2009, 09:09 Rst7 Цитатавсего-то в Memory Control Block менежера пам... Jan 28 2009, 09:14 VslavX Цитата(Rst7 @ Jan 28 2009, 11:14) LR еще ... Jan 28 2009, 11:26 VslavX Цитата(Rst7 @ Jan 28 2009, 13:35) А ассер... Jan 28 2009, 11:58  _Pasha Цитата(VslavX @ Jan 28 2009, 15:58) Подхо... Jan 28 2009, 12:31    VslavX Цитата(zltigo @ Jan 28 2009, 16:04) Значи... Jan 28 2009, 14:38 Rst7 ЦитатаПодход очень неплох - когда завершаемся - мо... Jan 28 2009, 12:04 VslavX Цитата(Rst7 @ Jan 28 2009, 14:04) минимал... Jan 28 2009, 12:17 Rst7 ЦитатаА как Вы ищете потом процедуру по этому адре... Jan 28 2009, 12:28 VslavX Цитата(Rst7 @ Jan 28 2009, 14:28) В IDA п... Jan 28 2009, 12:42 Rst7 ЦитатаА для IAR-а тоже сработает?
Ага. 4.42 точно... Jan 28 2009, 12:43 Rst7 Цитатадля текущей задачи задачи известен указатель... Jan 28 2009, 13:41 zltigo Цитата(Rst7 @ Jan 28 2009, 16:41) Я не оч... Jan 28 2009, 13:46 Rst7 ЦитатаТогда при вызове malloc у меня можно явно ук... Jan 28 2009, 13:53 Rst7 Плохо только то, что армовский IAR почему-то не ск... Jan 28 2009, 13:57 VslavX Цитата(Rst7 @ Jan 28 2009, 15:57) Плохо т... Jan 28 2009, 14:24 Rst7 ЦитатаПопробуйте применить к функции модификатор s... Jan 28 2009, 14:27 Rst7 ЦитатаА функции, да, не конкатенирует
Дык я об эт... Jan 28 2009, 14:43 sergeeff Многие признают, что scmRTOS для микропроцессоров ... Feb 6 2009, 17:52
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|