秋招面经-01

1.进程通信方式

  • 共享内存
  • 管道
  • 消息队列
  • 信号量

谈谈共享内存的实现方式
每个进程有自己的进程控制块和地址空间,且都有一个与之对应的页表,负责将进程的虚拟地址与物理地址进行映射,通过内存管理单元(MMU)进行管理。两个不同的虚拟地址通过页表映射到物理空间的同一区域,它们所指向的这块区域即共享内存。

#include<sys/ipc.h> 
#include<sys/shm.h> 
int shmget(key_t key, size_t size, int shmflg);

/*该接口用于获得一个共享内存标识符或创建一个共享内存对象并返回其标识符。
key为标识共享内存的键值,size以字节为单位设定内存大小,shmflg为内存模式标志参数。
*/

#include<sys/types.h> 
#include<sys/shm.h> 
void *shmat(int shmid, const void *shmaddr, int shmflg);

/*
该接口将标识符为shmid的共享内存区域对象映射到调用进程的地址空间,
shmaddr指定共享内存出现在进程内存地址所在的位置,
常设为NULL让内核决定合适的位置。shmflg指定操作共享内存的方式。
当映射成功时,函数返回附加好的共享内存地址。
*/
#include<sys/types.h> 
#include<sys/shm.h> 
int shmdt(const void *shmaddr);
/*
该接口用于断开共享内存连接,禁止本进程访问此片共享内存区域。shmaddr指连接的共享内存的起始地址,断开成功时函数返回0。
*/

#include<sys/types.h> 
#include<sys/shm.h> 
int shmctl(int shmid, int cmd, struct shmid_ds *buf);
/*
该接口实现对共享内存段的控制,获取或设置其相关属性。
cmd设置为IPC_RMID时该接口删除此段共享内存。*/

但是共享内存没有进程间同步与互斥机制。例如,进程A对共享内存执行写操作,
在A的写入结束之前,进程B就可以从共享内存区读取数据,
并无某种自动的机制来阻止进程B的读操作。一般为了实现进程同步和互斥,常常将共享内存和信号量配合使用。

2.TCP连接中TIME_WAIT的作用

  • 可靠关闭TCP连接
    防止客户端ack丢失,服务器重传fin时客户端不响应,导致服务器无法正常关闭
  • 防止本次连接的数据报干扰下次连接
    time_wait等待2MSL两个最大报文生存周期,可以让本次连接的报文消失

3.TIME_WAIT数量过多怎么办

  • socket复用
  • 缩短time_wait时间

4.百万考试高考成绩排序

桶排序 计数排序

5.Servlet生命周期

图片说明

6.HTTPS的流程

HTTPS在传输的过程中会涉及到三个密钥:服务器端的公钥和私钥,用来进行非对称加密;客户端生成的随机密钥,用来进行对称加密

  1. 客户端向服务器发起HTTPS请求,连接到服务器的443端口
  2. 服务器端有一个密钥对,即公钥和私钥,是用来进行非对称加密使用的,服务器端保存着私钥,不能将其泄露,公钥可以发送给任何人。
  3. 服务器将自己的公钥发送给客户端。
  4. 客户端收到服务器端的公钥之后,会对公钥进行检查,验证其合法性,如果发现发现公钥有问题,那么HTTPS传输就无法继续。严格的说,这里应该是验证服务器发送的数字证书的合法性,关于客户端如何验证数字证书的合法性,下文会进行说明。如果公钥合格,那么客户端会生成一个随机值,这个随机值就是用于进行对称加密的密钥,我们将该密钥称之为client key,即客户端密钥,这样在概念上和服务器端的密钥容易进行区分。然后用服务器的公钥对客户端密钥进行非对称加密,这样客户端密钥就变成密文了,至此,HTTPS中的第一次HTTP请求结束。
  5. 客户端会发起HTTPS中的第二个HTTP请求,将加密之后的客户端密钥发送给服务器。
  6. 服务器接收到客户端发来的密文之后,会用自己的私钥对其进行非对称解密,解密之后的明文就是客户端密钥,然后用客户端密钥对数据进行对称加密,这样数据就变成了密文。
  7. 然后服务器将加密后的密文发送给客户端。
  8. 客户端收到服务器发送来的密文,用客户端密钥对其进行对称解密,得到服务器发送的数据。这样HTTPS中的第二个HTTP请求结束,整个HTTPS传输完成。
#后端开发实习生#
全部评论
【公司信息】迪普科技为浙江省第一家上市的网络安全公司,成立于2008年,于2019年4月上市,拥有专业的技术团队,50%为研发人员,每年将销售收入的25%投入研发,重视科技研发。 【公司官网】http://www.dptech.com 【薪资福利】年收入15W-25万,面试结果优秀者可享受SPoffer/超级offer!可享受杭州市政府2-6万元补贴,入职后表现优秀可享受股权激励! 【招聘岗位】管培生/售前技术工程师/技术支持工程师/C开发工程师/Java开发工程师/Python开发工程师/测试工程师/FPGA工程师/硬件工程师/网络安全工程师 【网申方式】PC端:zhaopin.dptech.com 移动端:微信扫码关注“迪普科技”微信公众号投递 【工作地点】杭州、北京、其他全国各省会城市 【*****】********* 【推荐码】EVKMAB
点赞 回复 分享
发布于 2022-10-05 14:57 湖北

相关推荐

暴杀流调参工作者:春招又试了一些岗位,现在投递很有意思,不仅要精心准备简历,投递官网还得把自己写的东西一条一条复制上去,阿里更是各个bu都有自己的官网,重复操作无数次,投完简历卡完学历了,又该写性格测评、能力测评,写完了又要写专业笔试,最近还有些公司搞了AI辅助编程笔试,有些还有AI面试,对着机器人话也听不明白录屏硬说,终于到了人工面试又要一二三四面,小组成员面主管面部门主管面hr面,次次都没出错机会,稍有不慎就是挂。 卡学历卡项目卡论文卡实习什么都卡,没有不卡的😂
点赞 评论 收藏
分享
评论
1
4
分享

创作者周榜

更多
正在热议
更多
# 一张图晒出你司的标语 #
4329次浏览 75人参与
# AI面会问哪些问题? #
27913次浏览 554人参与
# 米连集团26产品管培生项目 #
13358次浏览 285人参与
# 你的实习产出是真实的还是包装的? #
20225次浏览 342人参与
# 找AI工作可以去哪些公司? #
9132次浏览 233人参与
# 春招至今,你的战绩如何? #
65327次浏览 582人参与
# 开放七大实习专项,百度暑期实习值得冲吗 #
15245次浏览 221人参与
# 从事AI岗需要掌握哪些技术栈? #
8977次浏览 305人参与
# 中国电信笔试 #
32012次浏览 292人参与
# 你做过最难的笔试是哪家公司 #
33585次浏览 232人参与
# 投递几十家公司,到现在0offer,大家都一样吗 #
340831次浏览 2174人参与
# 阿里笔试 #
178604次浏览 1316人参与
# 哪些公司真双非友好? #
69600次浏览 289人参与
# 机械人避雷的岗位/公司 #
62704次浏览 393人参与
# 第一份工作一定要去大厂吗 #
14651次浏览 122人参与
# 金三银四,你的春招进行到哪个阶段了? #
22091次浏览 280人参与
# 为了减少AI幻觉,你注入过哪些设定? #
26257次浏览 310人参与
# 沪漂/北漂你觉得哪个更苦? #
9874次浏览 193人参与
# 应届生第一份工资要多少合适 #
20685次浏览 86人参与
# HR最不可信的一句话是__ #
6291次浏览 114人参与
# AI时代,哪个岗位还有“活路” #
11560次浏览 345人参与
# 春招你拿到offer了吗 #
831270次浏览 9987人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务