runloop 总结篇

runloop 总结篇_第1张图片
283E6172803BEC89AE1040D9D708CD6C.png

用户态 和内核态
1.是以权限划分,
用户态不直接对如何分配内存等等进行管理,怕出各种情况等等。
用户态需要切换成内核态,Mach_msg 对线程 进程,内存管理,驱动等等。
比如C函数库中的内存分配函数malloc(),它具体是使用sbrk()系统调用来分配内存,当malloc调用sbrk()的时候就涉及一次从用户态到内核态的切换,类似的函数还有printf(),调用的是wirte()系统调用来输出字符串,等等。

runloop:是干什么的?他循环等着事件来处理。

runloop:内部实际是啥?是用户态向内核态的转换。
runloop 总结篇_第2张图片
B2A593F9A4586FF84007DDCC398E7345.jpg

你可能感兴趣的:(runloop 总结篇)