前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >美团云计算方面面试题

美团云计算方面面试题

作者头像
三哥
发布2018-06-27 12:04:32
9840
发布2018-06-27 12:04:32
举报
文章被收录于专栏:java工会java工会

1、Linux进程间的通信方式?两个进程是如何来共享内存的?两个进程如何通过信号量通信?

  • Linux下进程间通信的方式有:管道(有名/无名) 、消息、信号、信号量、共享内存、邮箱、socket。
  • Linux下共享内存是进程间通信的方式之一,共享内存允许两个或多个进程访问同一块内存,比如像 malloc函数向不同的进程返回执行同一块物理内存区域的指针。当一个进程改变了这块地址中的内容的时候,其他拥有这块物理内存指针的进程也会察觉到这个更改。在进程间的通信方式中,共享内存是通信效率最高的,访问共享内存区域和访问进程独有的内存区域一样快,并不需要通过系统调用或者其他通过内核的过程来完成,同时也避免了各种不必要的复制。对共享内存的操作涉及到多个进程间的同步问题,数据应该先写,在读,通常采用用信号量来协调这个过程。

2.进程与线程的区别?

线程是进程中的一个逻辑执行单元,也是进程中可调度的实体;一个进程中可以包含多个线程,但是一个线程只能隶属于一个进程。

与进程的区别:

  • CPU调度方面:CPU调度是以线程为基本单位进行的;
  • 拥有资源方面:进程是拥有资源的基本单位,线程不拥有系统的资源,但是可以使用隶属于进程的资源;
  • 并发方面:线程和进程都支持并发;
  • 系统开销方面:创建进程的时候需要为进程分配资源,销毁进程时需要回收资源,所以使用进程的开销要大于使用线程的开销。

3、进程控制块?

操作系统通过进程控制块来对进程控制和管理的。PCB通常在系统内存中占用一块连续的分区,它存放着操作系统用于描述进程情况以及控制进程运行情况所需的全部信息。

4、为什么要CPU调度?

CPU调度的目标是在任何时候都有某些进程在运行,是CPU使用率最大化。 同一时刻只有一个进程占有CPU资源,但一个进程在等待IO时等等一些阻塞进程的动作时,CPU就回空闲出来,这时候,我们应该让这个阻塞的进程让出CPU资源,让其他已经处于就绪状态的进程执行。这样就可以使CPU使用率最大化。

5、为什么要死锁?

在多道程序环境下,多个进程可能竞争一定数量的资源,某个进程申请资源,如果这时这个资源不可用,那么这个进程就进入等待状态。如果所申请的资源被其他等待进程占有,那么该等待进程可能再也无法改变其状态,一直等待下去,这种情况称之为死锁。

6、cache的作用?

cache是处于 CPU寄存器和内存之间的一层缓存,用来加快CPU的取指速率,使用时: CPU需要数据时,首先会查找cache中有没有需要的数据,如果有,则取走,如果没有,则查询内存,并将数据更新到缓存中,以供下次取指。

7、DNS (Domain name system)域名系统,简单描述其工作原理。

DNS客户机需要在程序中使用名称时,它会查询DNS服务器来解析该名称。客户机发送的每条查询信息包括三条信息:包括:指定的DNS域名,指定的查询类型,DNS域名指定的类别。它是基于UDP的服务,端口是53,该应用一般不直接为用户使用,而是为其他应用服务如 HTTP、SMTP等在其中需要完成主机名到IP地址转换。

END

作者:小招 光明顶小招 来源:https://mp.weixin.qq.com/s/a0bun4sXUVYhRgG1SYuOBA 本文版权归原作者所有。转载文章仅为传播更多信息之目的,如有侵权请与我们联系,我们将及时处理。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-06-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java工会 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
NAT 网关
NAT 网关(NAT Gateway)提供 IP 地址转换服务,为腾讯云内资源提供高性能的 Internet 访问服务。通过 NAT 网关,在腾讯云上的资源可以更安全的访问 Internet,保护私有网络信息不直接暴露公网;您也可以通过 NAT 网关实现海量的公网访问,最大支持1000万以上的并发连接数;NAT 网关还支持 IP 级流量管控,可实时查看流量数据,帮助您快速定位异常流量,排查网络故障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档