RPL和一致性代码段的作用区别

我理解 RPL是为了让操作系统知道是谁提出的访问代码段的请求 如果是用户的话可以防止其在执行期间访问内核数据 此时CPL为0
如果一个内核段是一致性代码段 它能够被用户级别的程序以CPL较低特权级执行 但是也不能访问内核数据段
那RPL的作用和一致性代码段的作用不是一样吗? 都是为了让用户程序可以调用系统程序 但是同时又不能访问不该访问的东西 又为什么要设置这两个东西呢? 他们在作用上的区别在哪里?
求解答