common.S和call.S的部分理解1(10)

即将“系统调用表基地址tbl+系统调用号scno*4”地址单元(上面的某个.long x)的数据(也就是某个系统调用处理函数的入口地址)放到PC寄存器中(因为有了对齐,所以不会产生访问越界的情况,又因为

cmp    scno, #__NR_syscall - __NR_SYSCALL_BASE
      cmpne    scno, #NR_syscalls    @ check range

以上两条语句保证了系统调用号scno的大小不会超出范围)。

可以看到,在calls.S结尾的系统调用:sys_ni_syscall。它除了返回-ENOSYS之外啥也没干:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/55ed6c6fe9c780ca1b111aa019ccd733.html