面经
Pretender_1
暂无
展开
-
k8s基础概念--面试问题
什么是k8s首先,他是一个全新的基于容器技术的分布式架构领先方案。Kubernetes(k8s)是Google开源的容器集群管理系统(谷歌内部:Borg)。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。这个还是不整理了,没用过也没心思去看了。参考博客:https://blog.csdn.net/weix...转载 2020-04-06 12:21:46 · 286 阅读 · 0 评论 -
面试题:用memcmp比较结构体是否可行
比较两个结构体时, 若结构体中含有大量的成员变量, 为了方便, 程序员往往会直接使用memcmp对这两个结构体进行比较, 以避免对每个成员进行分别比较。 这样的代码写起来比较简单, 然而却很可能深藏隐患。 请看下面的示例代码:#include <stdio.h>#include <stdlib.h>#include <string.h>typedef s...转载 2020-04-05 17:45:09 · 1004 阅读 · 0 评论 -
arm架构和x86架构有什么区别,指令集
区别一、性能 X86结构的电脑无论如何都比ARM结构的系统在性能方面要快得多、强得多。X86的CPU随便就是1G以上、双核、四核大行其道,通常使用45nm(甚至更高级)制程的工艺进行生产;而ARM方面:CPU通常是几百兆,最近才出现1G左右的CPU,制程通常使用不到65nm制程的工艺,可以说在性能和生产工艺方面ARM根本不是X86结构系统的对手。但ARM的优势不在于性能强大而在于效率,...原创 2020-04-05 11:02:58 · 3995 阅读 · 0 评论 -
RPC简单理解
昨天面搜狗的时候问了RPC和gRPC,之前都没听过,现场一度十分尴尬.可能是项目里用到了zmq的东西,面试官就顺口问了。 今天整理下RPC的基本概念,做个记录。RPCRPC是 Remote Procedure Call Protocol 的简写,中文描述是远程过程调用,它可以实现客户端像调用本地服务(方法)一样调用服务器的服务(方法)。RPC 可以基于 TCP/UDP,也可以基于 HTTP 协...原创 2020-04-04 23:29:50 · 352 阅读 · 0 评论 -
python和c++的区别以及python回收机制
语言类型python是一种基于解释器的语言,解释器会逐行读取代码;首先将python编译成字节码,然后由C程序解释.C++是一种编译语言,在其他章节里写过,整个过程是编译器编译代码成汇编语言,汇编语言由汇编器生成机器码,之后还要经过链接器载入文件\库等指令生成可执行代码,最后装载器将可执行代码和数据载入内存,CPU读取内存执行.内存管理python由自动垃圾收集器进行内存管理.c...原创 2020-04-04 21:16:27 · 260 阅读 · 0 评论 -
Docker基本概念和面试常见问题
Docker基本概念由于不同机器不同的操作系统上,不同的库和不同的组件,如果要将一个应用部署到多台机器上就需要有大量的环境配置的操作。而且配环境是非常麻烦的事情,不同的系统下库版本可能不同或者有的机器是物理断网的很多环境配置上就很麻烦。Docker主要解决了环境配置的问题,它是一种虚拟化技术,对进程进行隔离,被隔离的进程独立于宿主的操作系统和其他隔离进程。Docker和虚拟机的比较虚拟机也...原创 2020-04-04 02:35:23 · 979 阅读 · 0 评论 -
程序装载及静态动态链接
程序装载程序执行的过程是 编译-汇编-链接成可执行文件–通过装载器把可以执行文件装载到内存中,cpu从内存中读取装载器装入的指令和数据。装载器把指令和数据装载到内存需要满足两个要求:可执行程序加载后占用的内存空间是连续的。执行指令的时候是一条一条指令的执行不能让程序自身决定他在内存中加载的位置,因为如果有很多程序执行的话,那么程序本身不知道那个内存地址是否已经被占用了。为了满足这些条件...原创 2020-04-04 00:04:03 · 179 阅读 · 0 评论 -
windows和linux运行程序的区别
本文摘自牛客:https://www.nowcoder.com/discuss/224797?type=post&order=time&pos=&page=0为什么同一个程序,在同一台计算机上,在Linux下可以运行,而在Windows下却不行呢?反过来,Windows上的程序在Linux上也是一样不能执行的1编译、链接和装载:拆解程序执行一个程序执行的过程是什...原创 2020-04-03 23:48:09 · 1345 阅读 · 0 评论 -
面试常见问题,c++11新特性
新特性auto关键字,编译器根据上下文情况确定auto的真正类型decltype ,有点类似于auto的反函数,能够获取变量类型 int a=1; decltype(a) b=a;nullptr ,空指针,为了解决原来C++中NULL的二义性问题而引进的一种新的类型,因为NULL实际上代表的是0void F(int a){ cout<<a<<endl;}v...原创 2020-04-03 16:40:10 · 2255 阅读 · 0 评论 -
线程、进程和协程区别联系
进程每个进程都有自己独立的地址空间,有自己的堆;还有进程状态的转换(就绪状态、运行状态、等待状态)。操作系统是以进程为单位分配系统资源的,如cpu、内存啊,进程是资源分配的最小单位。线程线程是轻量级进程,是操作系统调度(CPU调度)的最小单位。线程的状态:新建---->就绪<----->运行<----->死亡在运行状态中又细分为,等待阻塞、同步阻塞、其他...原创 2020-04-03 12:17:45 · 146 阅读 · 0 评论 -
shell常见问题
常见的命令:less less 文件名,q退出;可以查看文件内容 和cat -A filename很像cat cat 文件名,打印文件内容,可以打开多个文件 cat file1 file2grep -参数 文件名-i 不区分大小写...原创 2020-04-03 03:11:15 · 280 阅读 · 0 评论 -
vector、list、map常见问题以及实现原理
vector和list区别从底层实现来说,vector是通过数组实现的,存储空间上是一段连续的存储空间;list是通过双向链表实现的,把不连续的内存块通过链表的方式连接在一起。从插入删除时间复杂度来说,vector是随机访问的O(1),但是插入和删除需要移动元素O(n)。 list不支持随机访问,需要遍历链表来查询O(n), 但是插入和删除效率就很高。vector空间扩大,stl中的源码可...原创 2020-04-02 14:18:54 · 1757 阅读 · 0 评论 -
c++构造函数,虚函数等面试问题
概念先说下c++中的类的特性:封装、继承、多态封装:将数据和操作数据的函数绑定在一起,同时能设置访问权限,比如类中的所有成员变量都是私有的,这就是封装的意义。继承:继承允许我们依据另一个类来定义一个类,这使得创建和维护一个应用程序变得更容易。这样做,也达到了重用代码功能和提高执行时间的效果。多态:多态的方式有两种多态多态分为静态多态(函数重载)和动态多态(函数重写(覆盖、虚函数))静...原创 2020-04-02 03:12:18 · 218 阅读 · 0 评论 -
面经问题整理1
CDNCDN:内容分配网络,任何内容都可以通过CDN进行加速;CDN概念:CDN是在现有internet上增加的新的一种网络架构,好处是用户可以在最近的节点上访问到所需要的内容,加快了网站响应的速度。那么是如何做到的呢:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-snoCKiWF-1585662254322)(en-resource://database/...原创 2020-03-31 21:45:11 · 153 阅读 · 0 评论 -
new和malloc的区别--面试问题及其延伸
参考博客:https://blog.csdn.net/zhong29/article/details/80930919malloc的实现方式malloc函数将内存空间中可用的内存块连接成一个很长的空闲链表。当调用malloc函数的时候,就会在链表中进行遍历,直到找到满足用户申请空间大小的内存块,然后就从链表中把这段内存拿出来分配给用户,剩下的接回原空闲链表。如果无法获取符合大小的内存块的时候,...原创 2020-04-01 21:59:04 · 168 阅读 · 0 评论 -
面经4
Effective C++尽量用编译器替换预处理器,如const\enum\inline替代#define2.尽量使用const3.编译器会默默为类创建默认构造函数,copy构造函数(A a; A b=a;这里就用到了copy构造函数),copy assignment操作符,析构函数)4.如果不想用编译器生成的函数,应该明确拒绝,把不想使用的成员函数声明为private并不予实现5.为...原创 2020-03-31 21:47:31 · 141 阅读 · 0 评论 -
面经3
decltype有点类似于auto,但是比auto的区别在于,1.它是用来获取一个变量的类型然后就可以去定义其他变量了。int tmp1=2;decltype(tmp1) tmp2;//此时tmp2就是int类型decltype(getSize()) tmp3;//此时tmp3也是int类型,因为decltype只分析其返回值是什么或者其变量类型是什么,并不考虑其是否真正有值。2.a...原创 2020-03-31 21:46:52 · 146 阅读 · 0 评论 -
面经2
const作用修饰变量说明是不可修改的修饰指针-指向常量的指针和指针常量常量引用,常作为形参,可以避免被函数修改//在类中class A{ private: const int a; //常量成员,只能在类初始化的时候被赋值 public: A():a(0){}; A(int x):a(x){}; ...原创 2020-03-31 21:46:14 · 160 阅读 · 0 评论