当前位置: 代码迷 >> 综合 >> Spring recruitment interview
  详细解决方案

Spring recruitment interview

热度:24   发布时间:2024-01-11 13:13:57.0

Spring recruitment interview

  1. 内存模型,栈和堆

栈,我们很好理解,因为函数调用的过程,先进后出,就是一个栈的结构;
堆,一直不明白,或者说很多资料上为什么在大块内存管理上没有说堆这个结构,很迷糊,”为什么用堆管理动态内存,怎么组织的,怎么成堆的“,国内的资料都不谈堆,直到在外网查到,堆,就看成一堆内存就行,它和数据结构中的堆没有关系。参考

It is just “co-incidental” that the stack is implemented “exactly” as the “data structured named stack”, but heap has no real relationship with the “data structure named heap.” In this case, I feel we need to look at the “heap” as just that: a heap of memory … meaning a large, unorganized region of memory where we can put things (as in data, of any size) and remove things from.

至于在内存模型中,栈、堆,怎么用,看国内的博客就行了。国内博客只是谈的用,为什么,怎么回事?谈的很少,或许因为大家只是程序员吧,还是应用型的,不是计算机研究员。

  1. docker 隔离不了哪些资源
    docker对utc、pid、network、mount、user、ipc六个namespace进行了隔离,但并没有完全隔离linux资源,比如selinux、cgroup以及/sys,/pro/sys,/dev/sd* 等目录下的资源

docker还存在较大的安全问题,比如容器逃逸,主要是docker使用操作系统虚拟化,即共享内核,通过之前没有禁止open_by_handle_at的能力,归根到底,是原来才用黑名单的方法限制容器能力,1.0之后才用白名单的方式限制容器能力。
通过open_by_handle_at打开宿主机挂载到容器的一个文件,获取宿主机的文件描述符的引用,然后构造file_handle类型数据,一般根目录节点编号是2,通过open_by_handle_at返回次目录的文件描述符,然后匹配要找的目录,之后,递归操作下去。…

  1. docker add 和 copy的区别
    add功能复杂,添加本地压缩文件时,会自动解压;支持从远程url中获取文件,但从url中获取的压缩包,不会自动解压。
    而copy是简化的add,不支持url,不自动解压,推荐使用copy。
    如需进行解压,可通过run命令,使用curl下载压缩包,并进行解压。

  2. go语言相关

  相关解决方案