Şu anda Robert Love tarafından 'Linux Kernel Development' okuyor ve bu montajın ne yaptığını anlamıyorum.linux kernel development
Temel olarak, her işlem çekirdeği yığında, yığının sonunda bulunan bir struct thread_info
vardır. Şimdi x86 mimarisine, görünüşte şu takımını kullanarak bu (varsayarak 8KB yığın boyutu) yakalayabilir
movl $-8192, %eax
andl %esp, %eax
Yani temelde ANDing 0xffffe000 yığın işaretçisi. Burada neler olduğu konusunda kafam karıştı mı? En az 13 bit
%esp
maskelemenin neden yapısını yapmamızı anlamıyorum. Açıklanınca aptalca hissedeceğimi biliyorum, ama bu beni rahatsız ediyor.
Teşekkürler.
Şu anda bu kitabı okuyorum ve daha da temel sorularım var: -8192'nin '0xffffe000' olduğunu nereden biliyorsunuz? CPU kayıtlarında negatif sayılar nasıl saklanır? –