"Ночные" сборки KolibriOS
-
И ещё(60,100,130, 60,100,135, 60,100,135, 60,100,130, 90,140,150, 90,145,150, 90,145,150, 90,140,150, 165,170,160, 180,177,165, 180,177,165, 160,170,165, 93,65,95, 105,77,100, 105,77,100, 93,65,95)
Возможности прикольные. Как насчет поддержки HEX цветов? Я бы тогда поэкспериментировал.
Ты старался, извини, но последняя буэ))))
Ну ладно, откатить обоину на предыдущую через palitra?)
Ты старался, извини, но последняя буэ))))
Ну ладно, откатить обоину на предыдущую через palitra?)
Из хаоса в космос
Ну цвета можно же любые подобрать.Leency wrote:Ты старался, извини, но последняя буэ))))
Разве это принципиально?Как насчет поддержки HEX цветов?
Сейчас просто пишешь "R,G,B, R,G,B, R,G,B, ..." и всё!
ещё вариант(0,80,184,0,88,190,0,82,184,0,70,172,42,168,250,46,172,252,42,166,248,30,154,240,184,228,252,212,244,254,204,238,254,164,216,248,72,78,94,174,46,26,174,46,26,134,38,128
)
)
Давай я залью fillscr и выберем цвета.Leency wrote:Ну ладно, откатить обоину на предыдущую через palitra?)
В свежей сборке svn7140, перестали работать программы, которые ещё недавно работали. Тестировал на реальном железе.
aclock
3dwav
gears
ray
view3ds
checkers
rforces
app_plus
game_center
syspanel
table
txtread
aclock
3dwav
gears
ray
view3ds
checkers
rforces
app_plus
game_center
syspanel
table
txtread
The Glass is Always Half Full!
Спасибо за репорт, я посмотрю, в чём там дело.
Покажи вывод grep -m1 ^flags /proc/cpuinfo
Покажи вывод grep -m1 ^flags /proc/cpuinfo
Нет проблем.dunkaist wrote:Спасибо за репорт, я посмотрю, в чём там дело.
Покажи вывод grep -m1 ^flags /proc/cpuinfo
Вот вывод:
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 tce nodeid_msr tbm topoext perfctr_core perfctr_nb cpb hw_pstate vmmcall bmi1 arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold
The Glass is Always Half Full!
Воспроизвёл баг в bochs. Пока вижу, что прилетает x87 Floating-Point Exception (0x10) на инструкции fstp. Причём, она не первая из fpu, а третья. Сегодня ушёл спать, на днях продолжу.
Помимо прочих косяков, #NM не триггерится AVX инструкциями, только FPU--SSE. Похоже, буду при наличии avx (или даже просто xsave) сохранять все регистры при каждом переключении, а без него по старому. Пока сделал, чтобы TS в do_change_task не устанавливался -- падения пропали. Планирую добавить туда же xsave/xrstor для случая avx, и должно быть счастье.
Тогда контекст fpu/sse переключаться не будет. Все будут с одним работать.dunkaist wrote:. Пока сделал, чтобы TS в do_change_task не устанавливался -- падения пропали.
Да, я поэтому не заливал. На выходных уезжаю, в начале недели только смогу пофиксить.Serge wrote:Тогда контекст fpu/sse переключаться не будет. Все будут с одним работать.dunkaist wrote:. Пока сделал, чтобы TS в do_change_task не устанавливался -- падения пропали.
Откатить при необходимости проще всего в начале fpu.inc, сделав jmp .no_xsave вместо jnc.
dunkaist
Посмотри пожалуйста ASAP, т.к. многие важные приложения не работают.
Посмотри пожалуйста ASAP, т.к. многие важные приложения не работают.
Из хаоса в космос
Возился с таймером HPET и заодно измерил латентность обработчика прерываний. Обнаружилась интересная вещь. В обычном состоянии при низкой нагрузке на цпу латентность 52-53 микросекунды. При 100% 2, иногда 3 микросекунды. Причина в использовании mwait в idle_thread. Если требуется низкая латентность обработчика, надо в kernel.asm поставить перед
P.S. Проблеме подвержены только цпу от Интел.
Code: Select all
jmp .no_wake_cpus
Code: Select all
; Move other CPUs to deep sleep, if it is useful
uglobal
use_mwait_for_idle db 0
endg
Это фича. idle_loop_mwait специально уводит процессор в глубокий сон C3, чтобы меньше грелся, но естественно, вывод из глубокого сна требует больше времени. Если вSerge wrote:Возился с таймером HPET и заодно измерил латентность обработчика прерываний. Обнаружилась интересная вещь. В обычном состоянии при низкой нагрузке на цпу латентность 52-53 микросекунды. При 100% 2, иногда 3 микросекунды. Причина в использовании mwait в idle_thread.
Code: Select all
mov eax, 20h ; or 10h
mwait
Сделаем мир лучше!
Who is online
Users browsing this forum: No registered users and 3 guests