Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Asm для Linux/Unix > Распараллеливание процессов


Автор: Vlast92 9.3.2012, 16:33
Возможно одновременно записывать звуковой файл в dev/dsp и проверять буфер клавиатуры (функция stop или pause)? Если можно то подскажите как.

Автор: 500mhz 9.3.2012, 20:44
а при чем тут асм?

Автор: Vlast92 9.3.2012, 21:35
Именно на нем и надо это реализовать.

Автор: 500mhz 9.3.2012, 23:25
Код


format ELF executable 3
entry start

segment readable executable writeable

start:

        mov    eax,2        
        xor    ebx,ebx
        int    80h
        cmp    eax,0
        jl    exit
        cmp    eax,0
        jg    process_2    
        
process_1:
        mov    eax,4        
        mov    ebx,1
        mov    ecx,txt1
        mov    edx,6
        int    80h
        jmp exit
        
process_2:
        mov    eax,4        
        mov    ebx,1
        mov    ecx,txt2
        mov    edx,6
        int    80h
exit:
        mov    eax,1        
        xor    ebx,ebx
        int    80h
txt1:
        db "proc1",0xa
txt2:
        db "proc2",0xa
        




Автор: Vlast92 12.3.2012, 22:49
Как сделать прерывание одного процесса из другого?

Автор: 500mhz 12.3.2012, 23:15
ну так у них PID разный же будет

Автор: Vlast92 12.3.2012, 23:28
Получается вариант с fork-ом отпадает?

Автор: 500mhz 12.3.2012, 23:43
почему? в сорце именно форк

Автор: Vlast92 12.3.2012, 23:51
Надо подумать...

Автор: 500mhz 12.3.2012, 23:55
че там думать?
Код

mov    eax,2        
xor    ebx,ebx
int    80h

делаем форк и получаем pid нового процесса

Автор: Vlast92 13.3.2012, 00:21
То есть wait-ом приостанавливать процесс?

Автор: 500mhz 13.3.2012, 01:14
wait не останавливает дочерние процессы, для остановки нада послать SIGSTOP.
для продолжения SIGCONT

Автор: Vlast92 13.3.2012, 18:20
Спасибо. С этим разобрался. Подскажите как обмениваться данными между главным и дочерним процессами?

Автор: 500mhz 13.3.2012, 18:30
да как угодно, хоть через сокеты хоть через pipe хоть через файл на диске

Автор: Vlast92 22.3.2012, 09:58
Как работает pipe?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)