Board.KolibriOS.org

Official KolibriOS board
It is currently Mon Aug 19, 2019 5:26 pm

All times are UTC+03:00




Post new topic  Reply to topic  [ 263 posts ]  Go to page Previous 13 4 5 6 718 Next
Author Message
 Post subject:
PostPosted: Tue Jan 09, 2007 3:06 pm 
Offline

Joined: Mon May 01, 2006 10:12 pm
Posts: 349
Пытались сделать юзер фриндли практически интерфейс :)
При правильной работе и запуске без параметров сначала спрашивает цель для выполнения (all kernel ...), при выборе kernel или all так же потребуется ввести язык из 3-ех предложенных. Также можно сразу запустить с параметрами build.bat all ru ,а после для очистки результатов build.bat clean .
Ну я думаю этим не обойдётся... Интересна какая именно конструкция ему неизвестна. У всех WinXP SP2 вроде бы нормально работает.


Top
   
 Post subject:
PostPosted: Tue Jan 09, 2007 7:41 pm 
Offline
User avatar

Joined: Fri Jan 27, 2006 3:06 pm
Posts: 1071
Quote:
И где вводить all ru?

Если в тотале, то можно в панели запуска ввести build all ru или en/de - для разных языков соответственно. При этом в папке с исходниками должна создаться папка bin и в нее будут помещены ядро выбранного языка, драйверы и скин


Top
   
 Post subject:
PostPosted: Wed Jan 10, 2007 8:58 pm 
Offline
User avatar

Joined: Fri Jan 27, 2006 3:06 pm
Posts: 1071
Можно просто ткнуть в новый build.bat: он при этом спросит, что собирать (all kernel drivers skins clean) - пишешь all, жмешь Enter, он спросит на каком языке - пишешь язык (ru en de), нажимаешь Enter. И не нужно при этом запускать никакой консоли...


Top
   
 Post subject:
PostPosted: Thu Jan 11, 2007 6:16 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Quote:
Если развернуть KFAR 0.17 на весь экран получается интересная цветомузыка в виде левой и правой панели (окна нету), притом, что правая панель жутко подмигивает.
Все это великолепие жрет 99% ресурсов системы.

Буду исправлять. Правда, я такого не наблюдал, видимо, потому что работаю в разрешениях 800*600 (стандартное для Kolibri) и 1024*768 (в Windows), (а также 640*480 под Bochs и VMWare); под 1280*1024 я проверить просто не додумался. Спасибо.
Quote:
Кстати скажи, пожалуйста, сколько кушает KFAR если его развернуть на весь экран (при разрешении 1280*1024)?

На один файл расходуется 304+4 байта. Теоретически помимо этого основная память идёт под изображение консоли, которое занимает чуть-чуть меньше 3*1280*1024 = 3.75Mb. Практически дополнительно возникают приколы с тем, что используемый менеджер памяти работает на 64-й функции и не всегда может освободить память, которая уже не используется (в смысле, может освободить только память в конце адресного пространства). Я уже некоторое время пинаю halyavin'а с просьбой переписать memalloc.inc на новые функции 68.12/13, но пока безуспешно.
Quote:
Я не хвалюсь, но в этой области надо что-то думать такие запросы для программы слишком шикарные.

Тут хвалиться не обязательно, факты говорят сами за себя. И, к сожалению (для меня), явно не в пользу KFar'а.
Quote:
Есть и положительный момент - скорость вывода в обычном режиме (без разворачивания на весь экран) практически сравнялась с KFM.

Оптимизация ещё только начинается...
Quote:
Удачи.

Спасибо.


Top
   
 Post subject:
PostPosted: Sat Jan 13, 2007 2:00 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Эта же схема использовалась в KFar 0.01. В версии 0.04 уже использовался менеджер памяти, поскольку такая простая схема вообще не проходит, когда необходимо выделять динамическую память под разные цели.
KFar 0.18. Ссылки всё те же.
http://diamondz.land.ru/kfar
http://diamondz.land.ru/kfar_src.7z
http://diamondz.land.ru/kfar.txt
Дальнейшая оптимизация по скорости. Теперь gmon показывает, что (при сравнении в окнах одного и того же размера) KFar занимает меньше процессорного времени, чем KFM. Ликвидировано зависание при максимизации окна. Добавлено сочетание Alt+F9.

_________________
Ушёл к умным, знающим и культурным людям.


Top
   
 Post subject:
PostPosted: Wed Jan 17, 2007 5:26 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
Quote:
Произошла описка. Я имел в виду KFAR, так что текст от этих слов и ниже относится к KFAR.

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


Top
   
 Post subject:
PostPosted: Wed Jan 17, 2007 6:38 pm 
Offline
Site Founder
User avatar

Joined: Sun Aug 08, 2004 8:55 am
Posts: 689
В MFAR память используется немного по-другому (или я ошибаюсь). Есть текстовый буфер изменяемого размера формата 0xB800. Сделано это было для того, чтобы потом облегчить портирование для работы в нативном текстовом режиме. Плюс, каждый раз, когда нужно нарисовать какую-то часть окна, под буфер, на этот раз уже пиксельный, выделяется блок, соответствующий размеру прямоугольника обновления; в него перекидываются данные из текстового буфера, потом он рисуется функцией #7, и после этого освобождается. Это позволяет не держать всё время выделенный пиксельный буфер, максимальный размер которого может составлять ширину на высоту экрана на 3, и не очень сильно влияет на скорость отрисовки.


Top
   
 Post subject:
PostPosted: Fri Jan 19, 2007 6:12 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
KFar 0.19. Исправлен баг с пересканированием панели по Ctrl+R, внесённый в версии 0.17. Требует последнего ядра (ревизия 283), поскольку в рамках уменьшения используемого объёма памяти использует новую функцию 65 - аналог функции 7 для 8-битовых изображений. Это сильно уменьшает объём требуемой памяти и немного ускоряет отрисовку. Перерисовка выполняется по методу, описанному mike.dld, эксперименты показывают, что это действительно практически не влияет на производительность. В результате с текущим ядром при каждой отрисовке объём свободной памяти немного уменьшается (в среднем на 8Кб), скорее всего, это утечка памяти в ядре, в реализации функции 64.

_________________
Ушёл к умным, знающим и культурным людям.


Top
   
 Post subject:
PostPosted: Mon Jan 22, 2007 6:58 pm 
Offline
User avatar

Joined: Thu May 19, 2005 4:43 pm
Posts: 896
У меня KFAR неправильно копирует файлы.
Если размер файла не превышает несколько сотен килобайт,то всё копируется правильно.А вот если размер к примеру мегабайт или десятки мегабайт,то копируется только несколько сотен килобайт от начала.
К примеру файл размером 3371008 байт превращается в файл размером 360448 байт.
При запуске KFAR-а в эмуляторе всё правильно копируется(неправильно работает только в реальной системе).

И ёще. При запуске KFAR-а на правой панели вместо строчек типа

......
ReadError

появляется чёрный прямоугольник.

p.s.
Естественно проверял с последней версией KFAR-а и ядра.


Top
   
 Post subject:
PostPosted: Thu Jan 25, 2007 5:56 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
andrew_programmer
Попробуй скопировать те же файлы через COPY2. Из 0.6.3.0 (на 70-й функции).


Top
   
 Post subject:
PostPosted: Thu Feb 01, 2007 9:46 pm 
Offline
User avatar

Joined: Thu May 19, 2005 4:43 pm
Posts: 896
Я пробовал копировать те-же файлы через программу copy2.Они копируются правильно и ничего не виснет.

При копировании KFAR-ом опирования он частенько подвисает.В большинстве случаев это подвисание приводит к тому,что перестаёт работать чтение/запись жёсткого диска.


Top
   
 Post subject:
PostPosted: Fri Feb 02, 2007 11:24 am 
Offline
User avatar

Joined: Fri Jan 27, 2006 3:06 pm
Posts: 1071
Quote:
При копировании KFAR-ом опирования он частенько подвисает.В большинстве случаев это подвисание приводит к тому,что перестаёт работать чтение/запись жёсткого диска.

У себя тоже такое наблюдал. Уже даже начал молиться за свой винчестер, когда после копирования файла стали зависать все файловые менеджеры колибри ;)


Top
   
 Post subject:
PostPosted: Fri Feb 02, 2007 12:15 pm 
Offline
User avatar

Joined: Fri Jan 27, 2006 3:06 pm
Posts: 1071
Я это понял, когда в винду перегрузился и обнаружил, что все в порядке, но сразу было не до этого :)


Top
   
 Post subject:
PostPosted: Fri Feb 02, 2007 6:39 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
KFar 0.2. Нормальная обработка ошибок чтения папок (больше никто не увидит псевдофайла "Read error" :)). Использование флага C в 0-й функции (не путать с CF из eflags).
Виснет не сам kfar, а ядро то ли в функции чтения, то ли в функции записи. Сути дела это, правда, не меняет. Кстати, попробуйте положить кирпич на PageDown при просмотре больших файлов.


Top
   
 Post subject:
PostPosted: Mon Feb 05, 2007 5:42 pm 
Offline
Kernel Developer
User avatar

Joined: Mon Nov 28, 2005 8:00 pm
Posts: 1601
KFar 0.21. Нормальная обработка всех ошибок. Поддержка создания папок (F7) при условии наличия ядра svn.321.
Висло, разумеется, ядро, в svn.321 это исправлено.
Quote:
Если операция обращения к жесткому диску завершилась без снятия флага, то доступ к файловой системе будет блокирован до перезагрузки.

Если прибить процесс, работающий с файловой системой, доступ будет блокирован до перезагрузки. Меня это достало и я добавил в функцию terminate код для освобождения free_hd_channel (освобождение hd1_status там уже было). svn.321.
Quote:
Копирование больших файлов - очень медленное. Нужно увеличивать размер однократно копируемого блока.

Копирование было очень медленным не из-за малого размера блока, а из-за неоптимальности функции 70.3. В svn.321 функция оптимизирована.

_________________
Ушёл к умным, знающим и культурным людям.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 263 posts ]  Go to page Previous 13 4 5 6 718 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 1 guest


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