Board.KolibriOS.org

Official KolibriOS board
It is currently Mon May 20, 2019 7:56 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 10 posts ] 
Author Message
PostPosted: Mon Mar 26, 2012 10:32 pm 
Во-первых, я тут обнаружил одну вещь.
SVN r. 1067 товарищ Galkov, давно не появляющийся на форуме, похерил пару pushfd/popfd изолирующих систему от последствий вызова CLI. Сопроводил он это броским комментарием "а нафига?", а в лог SVN гордо написал "event - small optimization, not more".

Действительно, нафига системе лишняя работа с прерываниями? Она может повернутся к ним нижней частью спины и остаться тет-а-тет с приложением, вызвавшим 72 функцию, еще немного времени. :lol:

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

Во-вторых
Меня всегда интересовало неуловимое событие:
Quote:
5 = перерисовывается фон рабочего стола (сбрасывается автоматически после перерисовки, так что если во время перерисовки фона программа не ждёт и не проверяет события, то этого события она не заметит)

Неуловимое в общем то по двум причинам: потому что неуловимый Джо и потому что действительно трудно поймать.
Ценность для приложения по сути нулевая. Я не знаю приложений которые это используют. Я хочу сделать так, чтобы событие всегда возвращалось всем потокам (у которых установлен соответствующий бит чрез ф.40), когда закончится перерисовка фона. Если вы знаете такие приложения, то просьба сообщить, чтобы не сломать работающих механизмов.

Итак жду мнения товарищей разработчиков.


Top
   
PostPosted: Mon Mar 26, 2012 11:21 pm 
SVN r. 2508 Fix for. r. 1067. Using of the CLI command, without pushfd/popfd - It's a Mad, Mad, Mad, Mad World!

Рискнул поправить первую часть первого поста темы.

Варианты:
1) Я прав!
2) Я прав!
2) Я прав!
2) Я прав!
Выбирайте какой по душе.
:mrgreen:


Top
   
PostPosted: Tue Mar 27, 2012 1:48 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Mario
1)Может заодно и /blkdev исправишь ? Там тебе код наверняка знаком :D
2)Поддерживаю. Событие специфическое и годится для десктоп приложения. А остальным без надобности.


Top
   
PostPosted: Tue Mar 27, 2012 1:53 pm 
Serge wrote:
Mario
1)Может заодно и /blkdev исправишь ? Там тебе код наверняка знаком :D

Что же ты раньше молчал? Партизан! :lol:

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


Top
   
PostPosted: Tue Mar 27, 2012 3:08 pm 
Offline
Kernel Developer
User avatar

Joined: Fri Aug 14, 2009 1:46 am
Posts: 1328
Galkov ушел на Оберон и пользуется там баальшим аффтаритетом.
Здесь его оптимизаторство не оценили. :(
Суперкласс: выпнуть костыль "потомучтозачем?", даже не разобравшись что он что-то держал.

_________________
Узкий специалист подобен флюсу: полнота его - односторонняя.
Козьма Прутков


Top
   
PostPosted: Tue Mar 27, 2012 3:16 pm 
Я не утверждал что я сильно умнее - Сергей выше ткнул меня носом в мое творчество давностью в несколько лет. Однако у меня хотя бы разблокировка идет, парное CLI/STI.


Top
   
PostPosted: Tue Mar 27, 2012 11:17 pm 
Mario wrote:
Я хочу сделать так, чтобы событие всегда возвращалось всем потокам (у которых установлен соответствующий бит чрез ф.40), когда закончится перерисовка фона.

Сделал в SVN r. 2513.


Top
   
PostPosted: Wed Mar 28, 2012 2:57 am 
Serge wrote:
1)Может заодно и /blkdev исправишь ? Там тебе код наверняка знаком :D

Что то я передумал трогать этот устоявшийся код - он достаточно стабилен, а все мои попытки сделать лучшее (враг хорошего!) вылились в кучу глюков еще в Qemu. Так что ну нафик! Иногда стоит соблюдать принцип "Работает? Не рожь!"


Top
   
PostPosted: Wed Mar 28, 2012 7:36 pm 
SVN r. 2515 Function 15.8 - Get coordinates of last draw the background
Получение предельных координат последней восстановленной области фона. Для достоверности данных должно быть вызвано приложением сразу при получении события 5.
Описание читать в документационной части исходников ядра.


Top
   
PostPosted: Mon Apr 02, 2012 2:02 am 
SVN r. 2537 оптимизация ф.15.8. Теперь вероятность того что приложение успеет получить правильные данные, до следующей перерисовки фона, значительно возросла.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 10 posts ] 

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Limited