LINUX.ORG.RU

Ем ай кул???


0

0

Вот написал свой сискол - получает массив с пид-ами и проверяет, является ли елемент i данного массива ребёнком елемента i-1.

И собственно вопрос напрашивается сам по себе - могу ли я считать себя Ъ?

ЗюЫю Гадателям по капче: на что намекает airffen?

>>> Просмотр (1280x1024, 168 Kb)

anonymous

Проверено: Shaman007 ()

Re: Ем ай кул???

Интересные массивы ты обрабатываешь...

pento ★★★★★ ()

Re: Ем ай кул???

нет, ибо убунту

anonymous ()

Re: Ем ай кул???

Может кто-нибудь знает как отключить
уголки вверху окон в wmii? Спасибо.. 

anonymous ()

Re: Ем ай кул???

Скрин неплохой, хотя вимператор там сверху не вписывается. По поводу wmii, у тебя там стоит шрифт в заголовках misc-fixed в 10646 и русские буквы берутся из какого-то другого шрифта, так вот если этот шрифт воткнуть в териминал, скажем urxvt, то русские буквы будут верно браться из того же шрифта, только koi8r, и выглядеть это будет нормально, а не так как здесь. Внимание вопрос, есть идеи как заставить wmii заменять отсутствующие в шрифте русские буквы из misc-fixed koi8r а не откуда он их там берет?

frd ★★ ()
Ответ на: Re: Ем ай кул??? от anonymous

Re: Ем ай кул???

$ cat /proc/version

Linux version 2.6.25-2-686 (Debian 2.6.25-3) (maks@debian.org) (gcc version 4.1.3 20080420 (prerelease) (Debian 4.1.2-22)) #1 SMP Wed May 14 16:42:03 UTC 2008

anonymous ()
Ответ на: Re: Ем ай кул??? от frd

Re: Ем ай кул???

> По поводу wmii, у тебя там стоит шрифт в заголовках misc-fixed в 10646 и русские буквы берутся из какого-то другого шрифта, так вот если этот шрифт воткнуть в териминал, скажем urxvt, то русские буквы будут верно браться из того же шрифта, только koi8r, и выглядеть это будет нормально, а не так как здесь.

Я шрифты не осилил))) Хотя теперь понял, почему в urxvt он кириллицу нормально показывает, а в самом wmii не хочет на отказ... Спасибо! Если решение будет найдено, поделись с народом.

Кстати, что-то никто не высказался по поводу качества кода)))

anonymous ()
Ответ на: Re: Ем ай кул??? от anonymous

Re: Ем ай кул???

>Кстати, что-то никто не высказался по поводу качества кода

Оценивать по паре строчек элементарного кода?

redgremlin ★★★★★ ()
Ответ на: Re: Ем ай кул??? от redgremlin

Re: Ем ай кул???

В етой паре строчек прячется ошибочка. Не синтактическая, конечно.

anonymous ()

Re: Ем ай кул???

Какие шрифты (Monospace?) и тема какая в Виме?

xTERM ★★ ()
Ответ на: Re: Ем ай кул??? от xTERM

Re: Ем ай кул???

> шрифты

monospace

> тема в Виме

desert

терминал - urxvt

цвета взяты из темы tango гномовского терминала.

background тут в галерее у кого-то приметил, да себе взял - #2e3436

anonymous ()

Re: Ем ай кул???

>на что намекает airffen?

а на что намекает "пид-ами" О_О

ubuNToo ()

Re: Ем ай кул???

No. You not. Some fonts may blow up your and our eyes.

//FIX MY ENG...

FiXer ★★☆☆☆ ()

Re: Ем ай кул???

Я один прочел "я ем акул???" ?

anonymous ()

Re: Ем ай кул???

Зачем asmlinkage? В чём его полезность?

wils0n ()
Ответ на: Re: Ем ай кул??? от anonymous

Re: Ем ай кул???

>Я один прочел "я ем акул???" ?

Нет, я тоже голоден.

anonymous ()

Re: Ем ай кул???

Мля, походу там _шансон_ 8( !!!

Burbaka ★★ ()
Ответ на: Re: Ем ай кул??? от anonymous

Re: Ем ай кул???

> Я шрифты не осилил))) Хотя теперь понял, почему в urxvt он кириллицу нормально показывает, а в самом wmii не хочет на отказ... Спасибо! Если решение будет найдено, поделись с народом.

http://www.gentoo.ru/?q=node/2185

Komintern ★★★★★ ()
Ответ на: Re: Ем ай кул??? от anonymous

Re: Ем ай кул???

Syscalls-таки да, Ъ, - однозначно;

Насчёт ошибки: до вечера не колись (ну, типа, я уже нашёл...)

Да, и есть акул летом - полезно

anonymous ()

Re: Ем ай кул???

> ЗюЫю Гадателям по капче: на что намекает airffen?

зЮыЮ намёк на вылет сборной Германии в финале от

anonymous ()

Re: Ем ай кул???

Предположим, kmalloc выделила память нормально, а copy_from_user рванула. Память утечет.

ierton ★★ ()

Re: Ем ай кул???

Надо использовать стиль типа

int ok = 0;
if(!malloc(m1))
goto OOPS1;
if(!malloc(m2))
goto OOPS2;

ok = 1;
free(m2);
OOPS2:
free(m1);
OOPS1:

return ok ? GOOD_BOY : -FUCK_OFF;

удачи...

ierton ★★ ()

Re: Ем ай кул???

leak на leak'e и leak'ом поганяет

lester ★★★★ ()

Нафига попу баян?

Собственно, subj. А кроме того:

А tasklist_lock точно не надо замыкать/отмыкать?
А память освобождать?

Хреновый получился системный вызов.

Dselect ★★★ ()
Ответ на: Re: Ем ай кул??? от redgremlin

Ем кильку.

> Оценивать по паре строчек элементарного кода?

Если ошибок столько, сколько здесь, то вполне можно.

Dselect ★★★ ()
Ответ на: Re: Ем ай кул??? от anonymous

Кулинарное

> Да, и есть акул летом - полезно

Может и полезно, но как-то не по-пацански. Вот кашалотов, или там синих
китов -- это другое дело!

Dselect ★★★ ()
Ответ на: Re: Ем ай кул??? от anonymous

Re: Ем ай кул???

>Кстати, что-то никто не высказался по поводу качества кода)))

Комменты это хорошо, но ошибки это плохо. Пиши более просто - будешь делать меньше ошибок.

vtVitus ★★★★★ ()

Re: Ем ай кул???

Я бы 100% передал твоему syscall'у отрицательный size.

Иди учи матчасть.

anonymous ()
Ответ на: Re: Ем ай кул??? от lester

Re: Ем ай кул???

Leak'и сплошные. Зато лики с коментариями.

anonymous ()

Re: Ем ай кул???

Вот версия поновее... Поругайте ещё! Критика никогда не помешает. ;)

http://img2.freeimagehosting.net/image.php?9ea74d0604.png

http://www.imagecross.com/image-hosting-view-15.php?id=48122008-06-27-002811_...

http://img98.imageshack.us/my.php?image=200806270028111280x1024ru3.png

Это всё тот же скрин, но на разных хостингах.

...на всякий случай. ))

// автор.

Медведев соврал, в воскресение мы за Россию поболеть уже не сможем, но с такой игрой оно и к лучшему... ((((

anonymous ()
Ответ на: Re: Ем ай кул??? от alphex_kaanoken

Re: Ем ай кул???

Не хорошо так разговаривать с одним из старейших посетителей этого сайта... Если вы не поленитесь прочитать статистику в моем профиле, то заметите, что даже id у меня 2... а не 11188.

anonymous ()

Re: Ем ай кул???

За шансон убейся об стену. А за Кучина 2 раза.

anonymous ()

Re: Ем ай кул???

ну кто так оформляет код, глаза поломать можно

п.с. за шансон( я по именам не знаю - но добрые люди подсказали :) ) огромный минус

lester ★★★★ ()

Re: Ем ай кул???

/* идея 1 - не фонтан */
asmlinkage int sys_checkpath (int *array, int size) {
    struct task_struct *task;
    int *karray = NULL;
    int retval;
    
    if ( array == NULL || size <= 0 )
        retval = -EINVAL;
    else if ( NULL == (karray = kmalloc(sizeof(int)*size, GFP_KERNEL)) )
        retval = -ENOSPC;
    else if ( copy_from_user(karray, array, sizeof(int)*size) )
        retval = -EINVAL;
    else if ( NULL == (task = find_task_by_pid(karray[--size])) )
        retval = __PATH_NOT_CORRECT;
    else {
        while ( (--size >= 0)
            && (NULL != (task = task->p_opptr))
            && (karray[size] == task-> pid) )
            ;
        retval = (size >= 0)? __PATH_NOT_CORRECT : __PATH_CORRECT;
    }
    if (NULL != karray) kfree(karray);
    return retval;
}

/* идея 2 - 'goto' тоже как-то не очень */
asmlinkage int sys_checkpath (int *array, int size) {
    struct task_struct *task;
    int *karray;
    int retval;
    
    if ( array == NULL || size <= 0 ) {
        retval = -EINVAL;
        goto quit;
    }
    if ( NULL == (karray = kmalloc(sizeof(int)*size, GFP_KERNEL)) ) {
        retval = -ENOSPC;
        goto quit;
    }
    if ( copy_from_user(karray, array, sizeof(int)*size) ) {
        retval = -EINVAL;
        goto free_mem_quit;
    }
    if ( NULL == (task = find_task_by_pid(karray[--size])) ) {
        retval = __PATH_NOT_CORRECT;
        goto free_mem_quit;
    }
    
    while ( (--size >= 0)
        && (NULL != (task = task->p_opptr))
        && (karray[size] == task-> pid) )
        ;
    retval = (size >= 0)? __PATH_NOT_CORRECT : __PATH_CORRECT;

free_mem_quit:
    if (NULL != karray) kfree(karray);
quit:    
    return retval;
}

/* идея 3 - много 'return' - в больших функциях чревато */
asmlinkage int sys_checkpath (int *array, int size) {
    struct task_struct *task;
    int *karray;
    
    if ( array == NULL || size <= 0 ) {
        return -EINVAL;
    }
    if ( NULL == (karray = kmalloc(sizeof(int)*size, GFP_KERNEL)) ) {
        return -ENOSPC;
    }
    if ( copy_from_user(karray, array, sizeof(int)*size) ) {
        kfree(karray);
        return -EINVAL;
    }
    if ( NULL == (task = find_task_by_pid(karray[--size])) ) {
        kfree(karray);
        return __PATH_NOT_CORRECT;
    }
    
    while ( (--size >= 0)
        && (NULL != (task = task->p_opptr))
        && (karray[size] == task-> pid) )
        ;
    return (size >= 0)? __PATH_NOT_CORRECT : __PATH_CORRECT;
}

/* в ообщем - хреново всё */
/* ваш вариант? */

anonymous ()

Re: Ем ай кул???

ничего так, симпатично. Какой шрифт в консоли?

FENix ()
Ответ на: Re: Ем ай кул??? от FENix

Re: Ем ай кул???

> ничего так, симпатично. Какой шрифт в консоли?

$ cat .Xdefaults | grep font

URxvt.font: xft:monospace:pixelsize=14

anonymous ()
Ответ на: Re: Ем ай кул??? от lester

Re: Ем ай кул???

Опять заговоры... Даже на лоре никакой анонимности... (((

anonymous ()
Ответ на: Re: Ем ай кул??? от anonymous

Отрубивши голову, по волосам не плачут.

Эх, goto -- не goto... 

>        while ( (--size >= 0)
>            && (NULL != (task = task->p_opptr))
>            && (karray[size] == task-> pid) )
>            ;

Вы лучше вот о чем подумайте. Где гарантия, что пока цикл выполняется,
этот самый task не завершится?

CPU0                            CPU1
[task #X]                       [task #N]
sys_checkpath()                 blah
...                             ...
task = find_task_by_pid(N)      sys_exit(0)

task = task->p_opptr
/* Oops! */

Может, таки надо какой-то lock брать? 

Dselect ★★★ ()
Ответ на: Отрубивши голову, по волосам не плачут. от Dselect

Re: Отрубивши голову, по волосам не плачут.

Намек понял, но о таких вещах пока думать не надо. На самом деле я студент, беру курс "Операционные системы", а это домашка первая... Синхронизацию мы только недавно на лекциях затронули)))

anonymous ()

Re: Ем ай кул???

ты серьезно слушаешь такую музыку?

anonymous ()
Ответ на: Re: Ем ай кул??? от anonymous

Re: Ем ай кул???

> ты серьезно слушаешь такую музыку?

Да.

// автор

ЗЫ На вкус и цвет, как говорится...

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.