LinuxForum.Fans
Тема

Самый быстрый линукс

Автор: Fesali 140 сообщений 33754 просмотров
#133126
drBatty написал:
вот они обычно таки на асме. причём там 100500 вариантов для разных камней.

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

В принципе спасибо за дискуссию, еще раз повторюсь, извиняюсь, если кто-то принял за троллизм и разборки,
-но лишь истины для. :D

#133128

так вывод то какой?

#133129
drBatty написал:
Wolfenberg пишет:
..........
да плевать хотела ОСь на ваши прерывания.

Вот именно.
Код с вызовом прерывания компилится и даже сегфаулт не пишет потом, но вызова физичсеки не происходит.Ядро не дает и защищенный режим не дает. ...

#133130
redux написал:
Это всё отговорки и размышления общего характера

почему-же? ядро ОС подменяет собой все прерывания. я вообще не очень понимаю, зачем вам это int21 из биоса?

redux написал:
только чтобы прерывание вызвалось.

а оно и вызовется. только это будет прерывание ОС. там затычка ЕМНИП стоит.

#133132
Termo написал:
так вывод то какой?

Вывод такой:
если хотите низкоуровневого (т е быстрого) обращения к оборудованию, к вашим услугам ядро. А к железу фиг.
И вся охота отпадает от этого на асме писать, потому что будете общаться с дром из него. (Ну за исключением регистров камня).

Ну пример, не на прямую в порт данные а ядру их сначала. А оно уж само. Прямого доступа нет короче.

#133134
redux написал:
в общем получается, что ядро само может, то есть модуль можно написать хоть какой, а вот прогам доступа нет.
Либо мы на правильном пути, и прога должна прикинутся модулем.

модуль == программа. если кому нужен прямой доступ к железу, он пишет модуль. а в венде ему приходится извращаться по разному.

redux написал:
Но это надо долго медитировать...

ну не так уж всё плохо на самом деле...

redux написал:
но вызова физичсеки не происходит.Ядро не дает и защищенный режим не дает. ...

дык модуль работает вместе с ядром, это что-то вроде плагина. оттуда вызовется. только эффект будет другим, не таким как в MS-DOS.

#133136
drBatty написал:
а оно и вызовется. только это будет прерывание ОС. там затычка ЕМНИП стоит.

грустно, но не вызываются. По крайней мере видеорежим и не думает переключаться.
А чтобы что-то вызвалось то прерывание самого ядра $0x80 надо использовать. В общем дали нам тока ядро........

#133138
redux написал:
только эффект будет другим, не таким как в MS-DOS.

Да вот же оно радимое:

asm("movb $0x05, %ah");
asm("movb $0, %al");
asm("int $0x10");

игнорируется ядром такое(последняя строка).

#133144
redux написал:
А к железу фиг.
И вся охота отпадает от этого на асме писать, потому что будете общаться с дром из него. (Ну за исключением регистров камня).

ну вы-же можете использовать последнее SSE или там 64х битность, или ещё какую-нить новую фишку, которую компиляторы пока плохо поддерживают, а стандартных функций ещё нет. Если есть у вас нестандартная железяка, вы можете использовать к ней свой модуль. Зачем ещё нужен прямой доступ?

redux написал:
если хотите низкоуровневого (т е быстрого) обращения к оборудованию

быстрее работать с модулем, который знает возможности оборудования. я сомневаюсь, что вы сможете нарисовать картинку на NVIDIA быстрее самой nvidia, даже имея прямой доступ и на нулевом кольце.

#133147
redux написал:
грустно, но не вызываются. По крайней мере видеорежим и не думает переключаться.

даже если-бы подумало, было-бы не радостно. сколько, и КАКИХ режимов знает ВАШ биос? 800х600 хотя-бы знает? :rolleyes:

redux написал:
А чтобы что-то вызвалось то прерывание самого ядра $0x80 надо использовать. В общем дали нам тока ядро........

нет. вот ещё:
$ lsmod

Показать
Module Size Used by
radeon 650763 2
ttm 39060 1 radeon
drm_kms_helper 23751 1 radeon
drm 133002 5 radeon,ttm,drm_kms_helper
i2c_algo_bit 4355 1 radeon
snd_seq_dummy 1107 0
snd_seq_oss 25580 0
snd_seq_midi_event 4620 1 snd_seq_oss
snd_seq 42857 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
snd_pcm_oss 33917 0
snd_mixer_oss 13399 1 snd_pcm_oss
ipv6 229909 12
snd_sb16 7672 0
snd_opl3_lib 7294 1 snd_sb16
snd_sb16_dsp 7720 1 snd_sb16
snd_sb16_csp 8325 1 snd_sb16
snd_sb_common 10358 3 snd_sb16,snd_sb16_dsp,snd_sb16_csp
snd_hwdep 5046 2 snd_opl3_lib,snd_sb16_csp
snd_mpu401_uart 5051 1 snd_sb16
snd_rawmidi 15557 1 snd_mpu401_uart
snd_seq_device 4543 5 snd_seq_dummy,snd_seq_oss,snd_seq,snd_opl3_lib,snd_rawmidi
snd_pcm 57736 3 snd_pcm_oss,snd_sb16,snd_sb16_dsp
snd_timer 15699 3 snd_seq,snd_opl3_lib,snd_pcm
snd 43107 15 snd_seq_oss,snd_seq,snd_pcm_oss,snd_mixer_oss,snd_sb16,snd_opl3_lib,snd_sb16_dsp,snd_sb16_csp,snd_sb_common,snd_hwdep,snd_mpu401_uart,snd_rawmidi,snd_seq_device,snd_pcm,snd_timer
soundcore 4815 1 snd
snd_page_alloc 5849 1 snd_pcm
lp 7161 0
fuse 52401 1
ppdev 5103 0
rtc_cmos 7838 0
thermal 10194 0
parport_pc 18027 1
via_agp 5044 1
rtc_core 12050 1 rtc_cmos
processor 26515 1
i2c_viapro 5055 0
8139too 16866 0
thermal_sys 12086 2 thermal,processor
parport 25487 3 lp,ppdev,parport_pc
rtc_lib 1522 1 rtc_core
psmouse 40750 0
agpgart 23773 3 ttm,drm,via_agp
button 3934 0
hwmon 1085 1 thermal_sys
shpchp 27112 0
i2c_core 15279 5 radeon,drm_kms_helper,drm,i2c_algo_bit,i2c_viapro
mii 3322 1 8139too
sg 21214 0
serio_raw 3754 0
evdev 6939 10
#133151
drBatty написал:
нет. вот ещё:
$ lsmod

да я имел в виду ядро в целом - с модулями. Оно, ж по сути есть модули, если не монолитное. Если брать по смыслу "ядро без модулей" , то я не знаю о чем тогда разговор вести.

drBatty написал:
даже если-бы подумало, было-бы не радостно. сколько, и КАКИХ режимов знает ВАШ биос? 800х600 хотя-бы знает? 

Для некоторых вещей хватило бы и этого. И меньшего. Для всякого спец оборудования например.
720 на 400 биос хнал еще 15 лет назад. В таких режимах больше и не надо.

#133153
drBatty написал:
я сомневаюсь, что вы сможете нарисовать картинку на NVIDIA быстрее самой nvidia, даже имея прямой доступ и на нулевом кольце.

Ну тут вопрос особый, на нее документации нет открытой.

#133160
redux написал:
да я имел в виду ядро в целом - с модулями. Оно, ж по сути есть модули, если не монолитное. Если брать по смыслу "ядро без модулей" , то я не знаю о чем тогда разговор вести.

ну это как вы соберёте. можете с модулями, можете монолитное. Последнее кстати побыстрее немножко.

redux написал:
Для некоторых вещей хватило бы и этого. И меньшего. Для всякого спец оборудования например.
720 на 400 биос хнал еще 15 лет назад. В таких режимах больше и не надо.

для спец-оборудования как раз и пойдёт спец ядро, из которого выкинули всё лишнее, и сделали монолитным (без модулей вообще).

кстати, собирать ядра просто - мышкой тыкаете, потом собираете. только тыкать долго.

#133161
drBatty написал:
для спец-оборудования как раз и пойдёт спец ядро, из которого выкинули всё лишнее, и сделали монолитным (без модулей вообще).

кстати, это и будет "самый быстрый Linux".

#133162
drBatty написал:
кстати, собирать ядра просто - мышкой тыкаете, потом собираете. только тыкать долго.

В смысле GUI уже для этого какой-то есть?
Всегда только в консоли собирал.

#133223
redux написал:
В смысле GUI уже для этого какой-то есть?

да уже тыщу лет как есть - ещё в 10 слаке ЕМНИП был. Сам в шоке oO

#133255

получается самый быстрый линукс есть на всяких маршрутизаторах, холодильниках, тостерах и утюгах... ибо на тех процах что в них есть, они умудряются еще и функции какие-то выполнять, причем довольно неплохо...

#133258
BigKvak написал:
получается самый быстрый линукс есть на всяких маршрутизаторах, холодильниках, тостерах и утюгах... ибо на тех процах что в них есть, они умудряются еще и функции какие-то выполнять, причем довольно неплохо...

ага. такой можно и на свой десктоп сделать. только 2 минуса:
1) красноглазить долго. хотя гентушникам нравится.
2) при апгрейде чего угодно (иногда даже мышки) дешевле выкинуть всю эту рухлядь вместе с этим "сверхбыстрым" линухом.
:)

а, этот "сверхбыстрый" комп через год станет тормозным. абгрейд-то делать нельзя....

#134818
bobr написал:
Стало быть, вообще любой. Любой дистр можно целиком загрузить в оперативу. Точнее говоря, просто смонтировать / в tmpfs

Эта мысль мне кажется продуктивной - наверное, поэтому так шустры кноппикс и паппи. Зато у них тормозная загрузка - с оптики загрузка быстрой быть не может. Тогда очередной вопрос - а почему в других дистрах этот способ не рассматривается? - ведь сегодня это не так тяжко, как тогда, когда РАМ считали не гигами, а мегами. Дело к тому, что скоро будут считать сотнями гигов. Использование мемори оставляет желать лучшего даже при 2гб. Вот бы их туда и пристроить.
Где прочесть про такую загрузку - причем понятно для виндейца?

пс. Не ожидал, что вопрос про асм приобретет такой оборот, но получилось очень интересно. Надеюсь, все тоже получили удовольствие. Не от ругани, конечно, а от углубления в тему - думаю, такое полезно ЗНАТЬ.

#134823
drBatty написал:
[quote=redux]В смысле GUI уже для этого какой-то есть?

да уже тыщу лет как есть - ещё в 10 слаке ЕМНИП был. Сам в шоке oO[/quote]
их даже два !
зовут братьев - "make xconfig" и "make gconfig" , первый для кедов , второй для GTK ...только пускаются они из графического рута :(

Войдите или зарегистрируйтесь, чтобы ответить.