1、linux和os:php
一、命令:netstat tcpdump ipcs ipcrm 这四个命令的熟练掌握程度基本上能体现实际开发和调试程序的经验html
二、cpu 内存 硬盘 等等与系统性能调试相关的命令必须熟练掌握,设置修改权限 tcp网络状态查看 各进程状态 抓包相关等相关命令 必须熟练掌握linux
三、awk sed需掌握c++
四、共享内存的使用实现原理、而后共享内存段被映射进进程空间以后,存在于进程空间的什么位置?共享内存段最大限制是多少?面试
五、c++进程内存空间分布(注意各部分的内存地址谁高谁低,注意栈从高道低分配,堆从低到高分配)算法
六、ELF是什么?其大小与程序中全局变量的是否初始化有什么关系(注意.bss段)编程
七、使用过哪些进程间通信机制,并详细说明缓存
八、makefile编写,编译连接 虽然比较基础,可是会被问到 makefile网络
九、gdb调试相关的经验,会被问到数据结构
十、如何定位内存泄露?
十一、动态连接和静态连接的区别
十二、32位系统一个进程最多多少堆内存
1三、多线程和多进程的区别(重点 必须从cpu调度,上下文切换,数据共享,多核cup利用率,资源占用,等等各方面回答,而后有一个问题必须会被问到:哪些东西是一个线程私有的?答案中必须包含寄存器,不然悲催)
1四、写一个c程序辨别系统是64位 or 32位
1五、写一个c程序辨别系统是大端or小端字节序
1六、信号:列出常见的信号,信号怎么处理?
1七、i++是否原子操做?并解释为何???????
1八、说出你所知道的各种linux系统的各种同步机制(重点),什么是死锁?如何避免死锁(每一个技术面试官必问)
1九、列举说明linux系统的各种异步机制
20、exit() _exit()的区别?
2一、如何实现守护进程?
2二、linux的内存管理机制是什么?
2三、linux的任务调度机制是什么?
2四、标准库函数和系统调用的区别?
2五、补充一个坑爹坑爹坑爹坑爹的问题:系统如何将一个信号通知到进程?
2、c语言:
一、宏定义和展开(必须精通)
二、位操做(必须精通)
三、指针操做和计算(必须精通)
四、内存分配(必须精通)
五、各种库函数必须很是熟练的实现
六、哪些库函数属于高危函数,为何?(strcpy等等)
3、c++:
一、一个String类的完整实现必须很快速写出来(注意:赋值构造,operator=是关键)
二、虚函数的做用和实现原理(必问必考,实现原理必须很熟)
三、sizeof一个类求大小(注意成员变量,函数,虚函数,继承等等对大小的影响)
四、指针和引用的区别(通常都会问到)
五、多重类构造和析构的顺序
六、stl各容器的实现原理(必考)
七、extern c 是干啥的,(必须将编译器的函数名修饰的机制解答的很透彻)
八、volatile是干啥用的,(必须将cpu的寄存器缓存机制回答的很透彻)
九、static const等等的用法,(能说出越多越好)
4、数据结构或者算法:
一、《离散数学》范围内的一切问题皆由可能被深刻问到(这个最坑爹,最重要,最体现功底,最能加分,特别是各种树结构的实现和应用)
二、各种排序:大根堆的实现,快排(如何避免最糟糕的状态?),bitmap的运用等等
三、hash, 任何一个技术面试官必问(例如为何通常hashtable的桶数会取一个素数?如何有效避免hash结果值的碰撞)
5、网络编程:
一、tcp与udp的区别(必问)
二、udp调用connect有什么做用?
三、tcp链接中时序图,状态图,必须很是很是熟练
四、socket服务端的实现,select和epoll的区别(必问)
五、epoll哪些触发模式,有啥区别?(必须很是详尽的解释水平触发和边缘触发的区别,以及边缘触发在编程中要作哪些更多的确认)
六、大规模链接上来,并发模型怎么设计
七、tcp结束链接怎么握手,time_wait状态是什么,为何会有time_wait状态?哪一方会有time_wait状态,如何避免time_wait状态占用资源(必须回答的详细)
八、tcp头多少字节?哪些字段?(必问)
九、什么是滑动窗口(必问)
十、connect会阻塞,怎么解决?(必考必问,提示:设置非阻塞,返回以后用select检测状态)
十一、若是select返回可读,结果只读到0字节,什么状况?
十二、keepalive 是什么东东?如何使用?
1三、列举你所知道的tcp选项,并说明其做用。
1四、socket什么状况下可读?
CentOS默认yum源是国外的, 速度没法保证,用起来很不爽,今天咱们把默认源换成国内的163源,163是目前国内最好用的源,速度是至关快的,还有一些比较好的源,好比阿里源。
1,首先咱们把CentOS7配置为能够上外网的环境
这里不会的能够看个人上一篇博客
2,进入yum源配置文件 cd /etc/yum.repos.d
3,备份一下当前的源,以防出错后能够还原回来mv ./CentOS-Base.repo ./CentOS-Base-repo.bak
4,下载网易163的源 wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
5,清理一下旧包 yum clean all
6,把下载下来文件 CentOS7-Base-163.repo设置成为默认源 mv CentOS7-Base-163.repo CentOS-Base.repo
7,生成缓存便可用163源了 yum makecache
如今咱们就能够用163源来安装软件了! 以下咱们安装一个php
查看一下,能够看到已经安装好了: