Rev 4430 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4430 | Rev 4432 | ||
---|---|---|---|
Line 246... | Line 246... | ||
246 | jz .copy_process_name_done |
246 | jz .copy_process_name_done |
247 | stosb |
247 | stosb |
248 | loop .copy_process_name_loop |
248 | loop .copy_process_name_loop |
249 | .copy_process_name_done: |
249 | .copy_process_name_done: |
Line 250... | Line 250... | ||
250 | 250 | ||
251 | mov ebx, [current_slot] |
- | |
252 | mov ebx, [ebx+APPDATA.process] |
251 | mov ebx, [current_process] |
Line 253... | Line 252... | ||
253 | mov [save_proc], ebx |
252 | mov [save_proc], ebx |
254 | 253 | ||
255 | stdcall create_process, [hdr_mem], [file_base], [file_size] |
254 | stdcall create_process, [hdr_mem], [file_base], [file_size] |
Line 429... | Line 428... | ||
429 | endl |
428 | endl |
Line 430... | Line 429... | ||
430 | 429 | ||
431 | mov ecx, pg_data.mutex |
430 | mov ecx, pg_data.mutex |
Line 432... | Line -... | ||
432 | call mutex_lock |
- | |
433 | - | ||
434 | xchg bx, bx |
431 | call mutex_lock |
435 | 432 | ||
Line 436... | Line 433... | ||
436 | xor eax, eax |
433 | xor eax, eax |
437 | mov [process], eax |
434 | mov [process], eax |
Line 563... | Line 560... | ||
563 | ret |
560 | ret |
564 | endp |
561 | endp |
Line 565... | Line 562... | ||
565 | 562 | ||
566 | align 4 |
563 | align 4 |
- | 564 | set_cr3: |
|
567 | set_cr3: |
565 | pushfd |
568 | 566 | cli |
|
- | 567 | mov ebx, [current_slot] |
|
569 | mov ebx, [current_slot] |
568 | mov [current_process], eax |
570 | mov [ebx+APPDATA.process], eax |
569 | mov [ebx+APPDATA.process], eax |
571 | mov eax, [eax+PROC.pdt_0_phys] |
570 | mov eax, [eax+PROC.pdt_0_phys] |
- | 571 | mov cr3, eax |
|
572 | mov cr3, eax |
572 | popfd |
Line 573... | Line 573... | ||
573 | ret |
573 | ret |
574 | 574 |