面试题,第四个模块定义(结构化面试七大类答题模板)

网友投稿 263 2022-08-29


面试题,第四个模块定义(结构化面试七大类答题模板)

# GIL锁:python全局解释器锁,# 假设一个进程有多个线程,当前线程执行的时候,就会抢到GIL锁,此时# 其他线程不可以执行,如果该线程有耗时等待,则GIL锁会打开,会被其他线程# 抢到,然后去执行。所以说,线程执行顺序是有先后的,不是同时执行的## 操作系统:中断以及意义# 计算机运行过程中,系统遇到了需要紧急处理的事件,会使cup暂时中断当前进程# ,去执行需要紧急处理的事件,当紧急事件处理完毕,则CPU返回刚才中断的程序,# 继续执行或者执行新的紧急事件。# 作用:cup与外设同步工作,故障处理,实时处理## 什么是同步I/O,异步I/O?# 特们的区别就是:遇到I/O操作的时候,同步I/O会堵塞## 进程,线程,多进程,多线程# 进程:操作系统进行资源分配和调度的基本单位,多个进程之间# 相互独立,稳定性好,一个进程崩溃,不会影响其他进程。但是资源消耗大,开启进程数量有限制## 线程:CPU进行资源分配和调度的基本单位,同一进程下的多个线程共享资源# 稳定性不好,一个线程崩溃,会导致进程崩溃。## 多线程,I/O密集型用多线程,因为遇到I/O以后,可以切换到其他线程,减少等待时间# 多进程:如果I/O操作比较少的话,一个线程运行的时候就会霸占GIL锁,其他的线程必须等待# 效率不高,所以要充分利用多核优势,所以要用多进程## 进程之间的通讯方式?# 管道,共享内存,消息队列,套接字,信号量## 内核态:可以将cup从一个进程,切换到另外一个进程,可以访问内存中的所有数据,包括外围设备## 用户态:受限的访问内存,不循序访问外围设备,占用CPU的能力被剥夺,CPU可以被其他进程获取## 多路复用:避免了非堵塞I/O轮番等待和询问的过程,把套接字交给select来监视# ,等待内核数据到来以后,告诉线程数据可读,线程发送read请求,在内核中进行# 数据拷贝,read完成。

-----------------------------------------------------------------------------------------------------------------------------------------


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:面试经验(大疆面试经验)
下一篇:SpringBoot整合liquibase及liquibase生成初始化脚本的方式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~