用户态和内核态的区别

本文介绍了用户态和内核态的概念,特别是在Java锁底层原理中,线程阻塞和唤醒涉及用户态到内核态的切换,这种状态转换带来的性能开销较大。

用户态和内核态的区别


你是世界的一杆称,一头重一头轻。 –RuiDer

                      --大侄子的纪念日2018-8-27   

文章目录

before

本篇文章是我在学习Java的synchornized锁底层原理时碰到的一个知识点,了解过synchornized底层原理的都会知道重量级锁中线程的阻塞和唤醒操作,这两种操作涉及到系统的调用,线程从用户态和内核态的切换,其开销非常大。

用户态和内核态的区别(转载)

	内核态与用户态是操作系统的两种运行级别,当程序运行在3级特权级上时,
就可以称之为运行在用户态,因为这是最低特权级,是普通的用户进程运
行的特权级,大部分用户直接面对的程序都是运行在用户态;反之,当程
序运行在0级特权级上时,就可以称之为运行在内核态。运行在用户态下
的程序不能直接访问操作系统内核数据结构和程序。当我们在系统中执行
一个程序时,大部分时间是运行在用户态下的,在其需要操作系统帮助完
成某些它没有权力和能力完成的工作时就会切换到内核态。 
这两种状态的主要差别是: 处于用户态执行时,进程所能访问的内存空间
和对象受到限制,其所处于占有的处理机是可被抢占的 ; 而处于核心态
执行中的进程
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值