6_ break open the correct posture STI again

1 directly open sti - blue screen

1570247170919

2 configuration environment properly break open sti

kpcr - a lot of important data thread switching, structure

Into the kernel when fs no longer teb / tib; is KPCR .

While observing kifastcallentry, and found that indeed set fs is the core kpcr:

1570247977571

That we manually modified to kpcr;

1570247880781

Note: If not used directly fs; then check the relevant hard-coded instead.

1570248214479

The system does not effect the card, and any way can not kill, not kill off:

The current system is not stuck, and can thread a scheduling; but the test program can not be killed, can not end, because the end of the thread is inserted into the queue apc request, the process is asynchronous ; because the end of the thread is not immediately end, certainly you need to perform to a specific environment, or to execute a statement on the cut, then the environment is wrong, may cause a blue screen, resulting in 100% wrong.

Thread the end of the actual process:

Before returning from ring 0 ring 3; apc system checks its queue to see if there is a request to end. There kill (if it is the last thread of a process, then the correspondence process to clean out)

But here:

0 has an infinite loop in the ring; not lead to switching to the instant before the check ring 3; not kill it.

How to kill:

---- only modify the disruption of the endless loop.

1570249015308

  • !process 0 0

  • .process corresponding _eprocess

  • u 0xaddr

  • ew 401005 9090 changes. . . nop out. And can kill off the

1570249133343


Guess you like

Origin www.cnblogs.com/leibso-cy/p/11718883.html