关注
恭喜拿到Offer,但如果不满意工作安排可以尝试与HR谈判或者选择其他机会。以下是我对面试问题的回答:
1. 进程与线程的区别?
进程是资源分配的最小单位,包含了程序代码和执行时所需的资源。而线程是在进程中执行的最小单位,它共享进程的资源,但具有独立的执行流程。进程之间的切换需要切换CPU的状态,而线程之间的切换则只需要切换寄存器的状态。
2. 进程与进程间都有哪些是不共享的?线程呢?
进程之间不共享的资源包括:进程号、地址空间、全局变量、打开的文件、子进程等。线程之间不共享的资源包括:线程ID、栈空间、寄存器、线程局部存储等。
3. 为什么要用多进程?
多进程可以充分利用多核CPU的优势,将任务分配到不同的进程中,加速程序的执行速度。同时,多进程可以实现进程间的数据隔离,提高程序的稳定性和安全性。
4. 为什么要用多线程?
多线程可以充分利用单核CPU的优势,将任务分配到不同的线程中,加速程序的执行速度。同时,多线程可以实现共享内存,减少数据传输的开销,提高程序的效率。
5. 既然线程比进程效率高,为啥还要使用多进程,直接使用多线程不就好了吗?
虽然线程比进程效率高,但是多线程也存在一些问题,比如线程间的竞争、死锁等。而多进程可以实现进程间的数据隔离,减少了这些问题的发生。同时,多进程可以充分利用多核CPU的优势,加速程序的执行速度。
6. 操作系统是一个进程吗?操作系统代码怎么运行的?怎么启动的?
操作系统不是一个进程,它是控制计算机硬件资源的软件系统。操作系统代码是以内核模式运行的,它可以直接访问计算机的硬件资源。操作系统的启动是通过BIOS将操作系统的引导扇区读入内存,然后将控制权交给操作系统内核启动程序。
7. 为什么要使用多进程?既然一个进程可以有多个线程,那所有的任务直接使用一个进程不就好了吗?
虽然一个进程可以有多个线程,但是多进程可以实现进程间的数据隔离,提高程序的稳定性和安全性。同时,多进程可以
查看原帖
8 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
9685次浏览 123人参与
# 为了减少AI幻觉,你注入过哪些设定? #
3904次浏览 131人参与
# 程序员找工作至少要刷多少题? #
16723次浏览 231人参与
# 机械人避雷的岗位/公司 #
43045次浏览 290人参与
# 我现在比当时_,你想录用我吗 #
8264次浏览 109人参与
# 你认为工作的意义是什么 #
248949次浏览 1497人参与
# 一张图晒一下你的AI员工 #
4672次浏览 111人参与
# 论秋招对个人心气的改变 #
9837次浏览 151人参与
# AI Coding的使用心得 #
4280次浏览 99人参与
# 刚入职的你踩过哪些坑 #
6375次浏览 127人参与
# 关于春招/暑期实习,你想知道哪些信息? #
6961次浏览 118人参与
# 牛客AI体验站 #
6126次浏览 167人参与
# 晒晒你司的新年福利 #
7740次浏览 101人参与
# 12306一秒售罄,你抢到回家的票了吗? #
1767次浏览 46人参与
# 总结:哪家公司面试体验感最差 #
92813次浏览 429人参与
# 程序员能干到多少岁? #
8106次浏览 114人参与
# 你认为小厂实习有用吗? #
117890次浏览 679人参与
# 互联网公司评价 #
485359次浏览 4109人参与
# 应届生进小公司有什么影响吗 #
118154次浏览 1158人参与
# 你的实习什么时候入职 #
341783次浏览 2270人参与
