static inline unsigned long get_limit(unsigned long segment) { unsigned long __limit; __asm__("lsll %1,%0" :"=r" (__limit):"r" (segment)); return __limit+1; } lsll 是加载段界限的指令,把 segment 段描述符中的段界限字段装入__limit,函数返回__limit 加 1,即段长。