面试系列
xifei66
你永远不知道自己的潜力有多大...
展开
-
Binder面试系列之四
1.1 什么是MMU MMU(Memory Management Unit)主要用来管理虚拟存储器、物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权、多任务多进程操作系统。1.2 发展历史注意:学习一个知识点很重要的一步是了解其为什么而存在?它的存在是为了解决什么问题?最后,在学习的过程中带着这些问题去理解、去思考 在许多年以前,还是使用DOS或一些古老的操作系统时,内存很小,同时,应用程序也很小,将程序存储在内存中基本能够满足需要。原创 2020-09-30 11:33:53 · 258 阅读 · 0 评论 -
Binder面试系列之三
1.1 简介 内存现代计算机都有两种以上的运行模式(普通模式、特权模式),linux系统只有两层:用户空间高优先级模式(特权模式) 低优先级模式(普通模式)。 linux系统在高优先级模式中运行系统内核代码以及与硬件密切相关的代码。低优先级运行应用程序与硬件无关部分。 应用程序不能直接操控硬件或者调用内核函数,需借助一系列接口函数申请让系统调用相关代码在内核空间运行,获取代码运行权限。1.2好处 应用程序崩溃不会造成内核崩溃,拿windows举例来说,QQ原创 2020-09-30 11:30:59 · 199 阅读 · 0 评论 -
Binder面试系列之二
谈谈你对 binder 的理解?面试官提了一个问题,我们来看看 张三、李四 和 王五 三位同学的表现如何吧张三自认为无所不知,水平已达应用开发天花板,目前月薪 10k面试官️:谈谈你对 binder 的理解张三:binder 是用来跨进程通信的,可以分为 client、server、binder 驱动以及 service manager 四部分。面试官:一次拷贝原理知道吗?张三:不太清楚,其实对应用开发来说,没必要知道的。面试官:好的,回去等通知吧李四业余时间经常打游.原创 2020-09-30 11:29:19 · 924 阅读 · 0 评论 -
Binder面试系列之一
为什么会有Binder通信机制,为什么不能用linux中已有的进程框架呢?Google工程师究竟是如何考量的,这一切需要从一场恋爱说起了解binder之前我们看看原有Linux进程是如何通信的吧! 为什么需要在内存中拷贝两次呢?在了解Linux进程通信前我们先理解下 恋爱的故事吧!故事:男孩和女孩在某次旅游一见钟情,而旅行结束的他们不得不返回各自的工作城市,那个时代还没有微信,由于相隔在不同的城市。相思念的他们只能通过邮局抒发彼此爱慕之情如果男孩想要给女孩发送信封,需要向本原创 2020-09-30 11:21:17 · 254 阅读 · 0 评论