關於當前宏觀經濟的Linux內核的工作(我指的是ARM架構)Linux內核:目前的宏觀工作
當前宏代碼:
return (struct thread_info *)(sp & ~(THREAD_SIZE - 1));
這意味着struct thread_info
放置在堆棧頂部?
這是Linux內核開發第三版:
struct thread_info
生活在堆棧的底部(對於向下生長棧),並在堆棧的頂部(對於成長堆棧)。
這個struct thread_info
如何被覆蓋防止?
我想:'(sp&〜(THREAD_SIZE - 1));'檢查是否有奇數個線程ID。代碼檢查的最後一位是1。 –
@GrijeshChauhan:我不確定是否這樣說,因爲進一步使用這樣的代碼是這樣的: current_thread_info() - >任務 –
我自己無法理解這一點,但我明白'(sp&〜(THREAD_SIZE - 1)'檢查最後一位是否爲1 –