LINUX.ORG.RU

Сообщения mskmsk1985

 

Дистрибутив linux под x86 размером в 4 метра

Форум — Admin

Нуден минидиструбутив чтобы поместился в 4 мегабайта и грузился с флэшки под 86 машину (можно 32 разряда) такие вообще существуют?

mskmsk1985
()

VirtualBox

Форум — Admin

Какие волшебные слова сказать что бы это штука смогла работать от лица рядового пользователя?

mskmsk1985
()

Udev специальные права для устройства

Форум — Admin

Подскажите какие волшебные слова нужно сказать в udev rules чтобы он определенному usb устройству (его ID мне известен = 064b:0225 ) назначал права на его файл /dev/bus/usb/00x/0yy равными 666, а не 664? Ну или на крайняк на все такие файлы назначить 666...

mskmsk1985
()

[Qt] лицензия и статическая линковка

Форум — Development

Я могу использовать свободную версию Qt статически её связав с исполняемым модулем в коммерческом проекте? (Интересна юридическая сторона, практически конечно могу все наплевав на всех...)

 

mskmsk1985
()

[kernel] timer_list

Форум — Development

обработчики этих таймеров вызываются в контексте с включенными прерываниями? (Похоже что да, хочу убедиться в этом)

 

mskmsk1985
()

[arm]Тормозит Busybox

Форум — Development

Сразу после загрузки системы (linux 2.6.36 + busybox 1.17.3) при подаче первых нескольких комманд одна из них подвисает на 25 сек потом все ОК. Если после запуска подождать около 3 мин то никаких тормозов. Ваши гипотезы господа!

 

mskmsk1985
()

Как сделать Kbuild более многословным?

Форум — Development

Для того чтобы отрубить оптимизацию компилятора достаточно указать EXTRA_CFLAGS := -O0 в спецификации kbuild или нет? И как заставить kbuild показывать команды компиляции?

mskmsk1985
()

[arm][ядро][DMA] Покритикуйте

Форум — Development

Что может быть плохого в таком коде:

struct my_struct
{
...
short* offset;
...
short data[SOME_LENGTH];
};

...
void some_irq_handler(int irq, void* data)
{
struct my_struct* ms;
dma_addr_t dma;
...
ms = kzalloc(sizeof(struct my_struct), GFP_ATOMIC);
if ( ms == NULL ) goto cleanup;
ms->offset = ms->data;
...
dma = dma_map_single(...., ms->offset, ..., ...);
....
}

Вся эта мура в немного более сложном виде у меня завязана на SSC + PDC (архитектура AT91). Так вот если есть строка ms->offset = ms->data то передатчик SSC via PDC начинает терять первое слово (грубо говоря первый кадр попросту пропадает) если делать не так (без этой строки) все ОК. В чем может быть ЛАЖА?

 , ,

mskmsk1985
()

DMA

Форум — Development

В ядре dma_pool_create, dma_alloc_coherent, dma_pool_alloc в случае провала возвращают NULL? (Хочу убедиться что я правильно понял исходники)

mskmsk1985
()

Сколько надо времени?

Форум — Development

Никто не знает сколько надо времени ядру Linux чтобы отреагировать на прерывание, при условии что линия прерывания совместно не используется, архитектура arm, частота проца 200 МГц. Нсть способ померить сие характеристику?

mskmsk1985
()

Распределение памяти в ядре

Форум — Development

Проверять на ошибки вызовы kzalloc/kmalloc и kmem_cache_alloc грамотнее сравнивая результат их работы с NULL или применять IS_ERR к результату?

mskmsk1985
()

Системный вызов.

Форум — Development

При входе в обработчик системного вызова (тот что нрописан в соответсвующем поле fops) прерывания включены или все же могут быть отключены?

mskmsk1985
()

Литература по Git

Форум — Development

Посоветуйте чего можно толкового почиать (что -то типа книги что есть по svn)

mskmsk1985
()

Синхронизация в ядре

Форум — Development

Должны ли быть реентерабельными: а - обработчик системного вызова в драйвере, б - обработчик прерывания в драйвере, в случае: 1 - SMP системы (возбуждение обрабатываемого прерывания блокируется до конца его обработки только на локальном APIC или все же на глобальном APIC контроллере?), 2 - при наличии вытеснения в ядре (обработчик системного вызова может быть прерван прерыванием от аппаратуры по окончании которого может произойти переключение процессов планировщиком, т. е. реентерабельность нужна и в отсутствие SMP?)

mskmsk1985
()

CMake + KBuild

Форум — Development

Нужно в дерево исходных кодов с системой сборки cmake (сама сборка естественно в отдельном каталоге) интегрировать каталог с исходными кодами модуля ядра linux (к модулю есть Makefile собирающей его через KBuild). Как сделать так чтобы при сборке cmake собирал этот модуль ядра (естественно в той директории где проходит сборка)?

mskmsk1985
()

Есть знатоки ядра?

Форум — Development

В функции do_mmap поясните мне приз следующее: [code=c] addr = get_unmapped_area(file, addr, len, pgoff, flags); if (addr & ~PAGE_MASK) return addr;/code] нет ведь никакой гарантии что get_unmapped_area вернет адрес выровненный по границе страницы (типа вот она:) [code=c] ...    for (vma = find_vma(mm, addr); ; vma = vma->vm_next) {

if (TASK_SIZE - len < addr) { if (start_addr != TASK_UNMAPPED_BASE) { start_addr = addr = TASK_UNMAPPED_BASE; goto full_search; } return -ENOMEM; } if (!vma || addr + len <= vma->vm_start) { mm->free_area_cache = addr + len; return addr; } addr = vma->vm_end; }[/code] и никакой гарантии что этот vma->vm_end выровнен нет.

После вызова get_unmapped_area как понимать следующий код: [code=c] munmap_back: vma = find_vma_prepare(mm, addr, &prev, &rb_link, &rb_parent); if (vma && vma->vm_start < addr + len) { if (do_munmap(mm, addr, len)) return -ENOMEM; goto munmap_back; }[/code] иными словами с чего бы вдруг найденная область начала перекрываться с другими (вроде как get_unmapped_area это исключает).

Заранее спасибо за внимание.

mskmsk1985
()

пространство ядра и 32 и 64 бита

Форум — Development

В 32 системе с 2 Гб оперативы каково пространство линейных адресов ядра в которых работате vmalloc?

Какой объем физ памяти линейно отображается в адреса после 0xffff810000000000?

mskmsk1985
()

[Qt] сигнал-слот

Форум — Development

Есть способ узнать от какого сигнала был запущен слот (узнать внутри запущенного слота) или нет.

ЗЫ: Внимание - интересно именно сигнал инициатор а не его отправитель!

 

mskmsk1985
()

Вопрос по С

Форум — Development

В следующем фрагменте кода

list_move_tail(&p->run_list, array->queue + p->prio);
поясните мне пожалуйста что такое array->queue + p->prio когда array->queue это struct list_head[140] а p->prio это int. Типа прибавление к указателю целого для получения нужного элемента массива?

mskmsk1985
()

Кто хорошо знает С?

Форум — Development

Кто хорошо знает С по полочкам разложите что сие код делает:

#define container_of(ptr, type, member) ({                      \
        const typeof( ((type *)0)->member ) *__mptr = (ptr);    \
        (type *)( (char *)__mptr - offsetof(type,member) );})

Больше всего меня интересует два вопроса: 1 - как понимать нуль при обращении к члену структуры (подразумевается что type есть некая структура) 2 - как блок {} может возвращать какое либо значение (или я чего не догоняю)

mskmsk1985
()

RSS подписка на новые темы