Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Пт авг 18, 2017 9:18 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 184 сообщения ]  На страницу Пред. 17 8 9 10 1113 След.
Автор Сообщение
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Вс дек 06, 2009 1:00 am 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 19, 2005 4:43 pm
Сообщения: 896
Цитата:
на постоянную основу пока не ставлю, результаты пока хуже ожидаемых, хотя и приемлемые...

Это из-за COM порта?

_________________
KolibriOS-перспективная ос!
Kolibri is best operation system in the world!


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Вс апр 24, 2011 9:36 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 25, 2009 4:45 pm
Сообщения: 788
Интересно. И какие на данный момент результаты?


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Пн апр 25, 2011 10:26 am 
Не в сети
Just Flooding
Аватара пользователя

Зарегистрирован: Ср май 18, 2005 10:27 am
Сообщения: 430
А мне интересно
- сколько COM портов используется одновременно
- использованы ли их аппаратные прерывания
- скорость обменов
- дуплекс или полудуплекс
- мастер - слейв RS-485?


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 6:10 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 30, 2013 5:56 pm
Сообщения: 31
Программа - помигать светодиодом
с LPT-порта на PPro:
Спойлер: Показать
Код:
--------------------
{Shapka}Program hello5;
Uses kolibri;    var k:TKolibri;
const   header:string='HelloWorld test'#0;
   str:string='Hello, World!';

{p1}procedure draw_window;
begin   k.BeginDraw;
   k.DefineWindow(10,40,300,300,$33FFFFFF,0,integer(@header[1]));
   k.WriteText(30,10,0,0,str);
   k.DefineButton(5,5,65,25,7,7);
   k.DefineButton(5,35,65,25,8,7);
   k.EndDraw; end;

{p2}procedure zachvat_portov;
begin asm
  mov eax,46
  mov ebx,0
  mov ecx,880
  mov edx,890
  int $40
end; end;

{p3}procedure proc_vkl;
begin asm
  mov eax,43
  mov bl,255
  mov ecx,888
  int $40
end; end;

{p4}procedure proc_vikl;
begin asm
  mov eax,43
  mov bl,0
  mov ecx,888
  int $40
end; end;

{p5}procedure otdatj_porti;
begin asm
  mov eax,46
  mov ebx,1
  mov ecx,880
  mov edx,890
  int $40
end; end;

var key:DWord;
BEGIN   draw_window;
   zachvat_portov;  {}
     while true do
   begin   case k.WaitForEvent of
      1:draw_window;
      2:k.GetKey(key);
      3: {break;}begin
                             k.getButton(key);
                             if key=7 then proc_vkl;
                             if key=8 then proc_vikl;
                           end;
      end;
   end;
   otdatj_porti;  {}
END.
----------------------


С вопросами - сюда: dvestidvadcatj@gmail.com


Последний раз редактировалось VitZ Пт май 30, 2014 11:30 am, всего редактировалось 3 раза.

Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 6:45 pm 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
На ассемблере кошернее и чуть быстрее - а вообще молодец.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 6:47 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Чт май 30, 2013 5:56 pm
Сообщения: 31
На паскале больше народу поймёт .


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 7:23 pm 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
По сути, половина кода на ассемблере. Зависит, конечно, от сложности задачи.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 8:21 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
Надо бы разрешить по дефолту адреса 0х200..3FF, чтоб народ не парился с 40-ми функциями при доступе к COM/LPT.

Оффтопик: И вообще default_io_map-таблицы слишком раздуты, только зря дублируем по 8кб сплошных xFF для каждой задачи.
Вторая таблица вообще не нужна, да и первую можно сократить до килобайта, чтобы весь TSS помещался в одной странице.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 8:37 pm 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
А как решать вопрос с одновременным доступом к портам от разных приложений? И еще интересный вопрос - доступ к портам через сисфункции вроде как deprecated, как тогда это должно делаться? В ring-0?


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 9:00 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
SoUrcerer
Отдать юзеру COM и LPT, и пусть сам свои портовые накладки разруливает.

Доступ к портам - из юзерспейса через in и out.
Нужно только битмаску порта скинуть в 0, для этого и нужна 46-я.


Последний раз редактировалось art_zh Чт май 30, 2013 9:06 pm, всего редактировалось 1 раз.

Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 9:06 pm 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
А если, скажем, драйверы COM-модема (гипотетические) и мышки конфликтовать начнут? Тоже проблемы юзера?


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 9:13 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Пт авг 14, 2009 1:46 am
Сообщения: 1291
SoUrcerer писал(а):
А если, скажем, драйверы COM-модема (гипотетические) и мышки конфликтовать начнут? Тоже проблемы юзера?

Убери драйвер - и конфликта не будет. Юзер лезет в порты, к которым у него пристегнуто его родное, нестандартное железо (вроде тех же светодиодов на LPT).
40-e функции - это самая большая дыра. Прощальный плевок diamondа был именно через 46-ю.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 10:13 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3928
art_zh
default_io_map расшарены через copy-on-write. Если приложение не обращается к портам, то пользуется общей страницей.
Я бы вообще запретил доступ к портам из user-mode. Нужен доступ - пиши драйвер. И экономия на страницах и меньше возни с этими битмапами.


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 10:37 pm 
Не в сети
Kernel Developer

Зарегистрирован: Вс фев 10, 2013 12:37 pm
Сообщения: 2329
Serge писал(а):
Я бы вообще запретил доступ к портам из user-mode. Нужен доступ - пиши драйвер. И экономия на страницах и меньше возни с этими битмапами.

Удваиваю.

_________________
Всем чмоки в этом проекте! Засуньте эти 11 лет себе в жопу!


Вернуться к началу
 Заголовок сообщения: Re: KolibriOS на производстве
СообщениеДобавлено: Чт май 30, 2013 10:47 pm 
Не в сети

Зарегистрирован: Пн сен 24, 2007 11:11 am
Сообщения: 2814
Mario_r4 писал(а):
Удваиваю.

Учетверяю, чего уж там.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 184 сообщения ]  На страницу Пред. 17 8 9 10 1113 След.

Часовой пояс: UTC+03:00


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

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


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

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