【秋招总结】面试相关-基础概念

##操作系统:

进程与线程的区别:

进程就是运行的一个程序,一个进程可以包含多个线程;进程是资源分配的最小单位,线程是CPU调度的最小单位。

线存共享

进程同步

进程调度的算法:先来先服务等

进程和线程死锁:

解决多线程同步和互斥的方法:互斥锁,条件变量,自旋锁,读写锁,信号量

Sychonized和lock的区别

线程池怎么实现,7个参数?

进程死锁发生在什么情况下,编程时尽量破坏哪个条件来避免死锁:

内存管理:

内存分布、堆、栈

虚拟内存、分页问题

页面置换算法:LRU

进程之间的通信有哪些、各个优缺点

消息队列

生产者消费者问题

阻塞非阻塞、同步异步IO的区别

select/poll/epoll

死锁

多线程交替打印

##计算机网络:

OSI七层,每层都有什么协议;

  • 第七层:应用层,操作系统中的应用进程和另一台主机上操作系统中的进程之间的交互。

    代表性协议:HTTP、FTP、SMTP、NTP等等

    数据单元:通常称呼为 Data,数据、文件、消息。

  • 第六层:表示层,主要是为了帮助应用层定义数据的表现形式,例如应用数据加密操作

    代表性协议:SSL、TLS、MIME、XDR

    数据单元:Data,数据包

  • 第五层:会话层,主要为了搞定主机与主机之间通信的会话的管理和控制。如会话的建立、挂起、恢复、关闭等等。如今我们用TCP协议较多,而这部分功能TCP已经自带会话管理。

    代表性协议:SOCKS、RPC、SPDY

    数据单元:Data,数据包

  • 第四层:传输层,主要是为了提供端到端的数据传输,并为传输效率和传输质量提供保证

    代表性协议:TCP,UDP

    数据单元:TCP报文或UDP报文

  • 第三层:网络层,主要作用是为了搞定两个网络之间数据的传输,包括路径检测和逻辑寻址

    代表性协议:IP、ICMP、IPSec、RIP、OSPF、BGP(后三个协议使用了TCP协议传输信息,可以说它们工作在第四层,为第三层服务)

    数据单元:IP数据包

  • 第二层:数据链路层,是为了搞定局域网内互连的设备之间的寻址和数据传输。比如交换机/路由器与手机、电脑之间,电脑与电脑之间。网卡也工作在这层。

    数据链路层又细分为:媒介访问控制(MAC)层和逻辑链路控制(LLC)层。

    代表性协议:MAC、LLC、VLAN、VTP、ARP、802.3 Ethernet、802.11 WiFi、L2TP、PPP等等。

    数据封装单元称为:Frame,中文一般称呼为“帧”。从第二层的“帧”往上,都是人们对数据规定的逻辑结构。

  • 第一层:物理层,主要为了搞定设备和传输媒介之间的信息传输的问题。例如电脑与网线、手机与无线、电脑与U盘等。

    代表性协议:PON、DSL、Bluetooth、802.3 Ethernet、802.11 WiFi、USB等等。

    数据单元称呼为:Bit,比特。一般以电压高低的变化、无线电波频率或幅度的变化、光信号的波长的变化表示。

交换机、路由器、网卡工作在哪一层

  • 网卡:工作在TCP/IP模型的网络接口层,即OSI模型的物理层和数据链路层。网卡将光电信号转换为数字信号,是物理层和数据链路层中的一个工具

    进行 socket 编程时,OS内部实现的TCP/IP协议栈的相关模块完成TCP报文和IP数据包的封装或解封装,由网卡实现链路层帧的封装或解封装,由网卡实现物理信号的转换和发射。

  • 交换机:主要工作在OSI模型的第二层,根据MAC地址实现数据帧的转发。

  • 路由器:主要工作在OSI模型的第三层,其核心功能是基于IP协议实现的网络路径选择和数据包转发。它的另一个重要作用就是划分子网,换句话说其实也是连接子网

TCP与UDP的区别

TCP拥塞协议中的快重传算法、流量控制、拥塞控制

滑动窗口

TCP报文序号怎么分配

UDP怎么实现可靠传输

HTTP与HTTPS的区别:HTTP的keepalive

HTTPS加密方式

HTTPS握手过程

SSL协议

数字签名验证过程

session和cookie的区别

网络字节序和主机字节序,大堆小堆

DNS域名解析过程

输入“baidu.com”到页面跳转显示出来,发生了哪些事情

网络层的路由器

MAC地址长度

如果有很多链接同时到达,服务器响应不过来会怎么办:

##数据库:

事务

索引

红黑树

B+树

第一、第二、第三范式

一条sql语句是如何执行的:发送指令→处理连接→查询缓存→语法解析→查询优化→交给存储引擎去执行

truncate和delete和drop的区别:drop直接删除表;truncate清空数据,只删除表中的数据;drop可以删除某一列的数据,如果不加where子句 就等于truncate

事务如何保证原子性,事务日志,日志的实现原理,解决了什么问题

各种锁,表锁、行锁、间隙锁、共享锁、排他锁等等,主要解决了什么问题

数据库的主从备份、读写分离等

MySQL怎么解决幻读的【靠版本控制?】

MySQL插件在2008年被开发出来,直到2010在Oracle收购了Sun公司后,发布的MySQL5.5才正式使用InnoDB plugin替代了旧版本的InnoDB,至此 「备胎」成功转正成为MySQL的御用引擎而不再是插件。InnoDB采用多版本并发控制(MVCC,MultiVersion Concurrency Control)来支持高并发。并且实现了四个标准的隔离级别,通过间隙锁next-key locking策略防止幻读的出现。InnoDB做了很多优化,比如:磁盘读取数据方式采用的可预测性预读、自动在内存中创建hash索引以加速读操作的自适应哈希索引(adaptive hash index),以及能够加速插入操作的插入缓冲区(insert buffer)等。

联合索引为什么要从左开始

序列化

##Linux

孤儿进程、僵尸进程

python垃圾回收机制

python多线程,能跑满CPU吗,解释GIL

python2和python3的区别

事务的实现原理:https://mp.weixin.qq.com/s/dkRvpamP9aiHvg8fmyrRRQ

##python

  1. Python深拷贝和浅拷贝

浅拷贝(使用copy函数或者copy模块里的copy函数):创建一个新的组合对象,只拷贝源对象的最外层元素,如果它还有子对象或者子子对象,则只拷贝了它们的引用,新对象与被拷贝的源对象共享内存中的子对象。
深拷贝(使用copy模块里的deepcopy函数):创建一个新的组合对象,同时递归地拷贝所有子对象,新的组合对象与原对象没有任何关联。虽然实际上会共享不可变的子对象,但不影响它们的相互独立性。

浅拷贝和深拷贝的不同仅仅是对组合对象来说,所谓的组合对象就是包含了其它对象的对象,如列表,类实例。而对于数字、字符串以及其它“原子”类型,没有拷贝一说,产生的都是原对象的引用。

  1. Python中*args和**kwargs的区别

在 python 中,*args 和 **kwargs 都代表 1个 或 多个 参数的意思。*args 传入tuple 类型的无名参数,而 **kwargs 传入的参数是 dict 类型。

  1. is和==的区别

    Python中对象包含的三个基本要素,分别是:id(身份标识)、type(数据类型)和value(值)

    is和==都是对对象进行比较判断的,但是对对象比较判断的内容不同:

    • ==是python标准操作符中的比较操作符,用来比较判断两个对象的value(值)是否相等
    • is也被叫做同一性运算符,这个运算符比较判断的是对象间的唯一身份标识,也就是id是否相同

3、数组和链表的区别
数组静态分配内存,链表动态分配内存;
数组在内存中连续,链表不连续;
数组元素在栈区,链表元素在堆区;
数组利用下标定位,时间复杂度为O(1),链表定位元素时间复杂度O(n);
数组插入或删除元素的时间复杂度O(n),链表的时间复杂度O(1)。

python垃圾回收

作者:鱼不用睡觉吗
链接:https://www.nowcoder.com/discuss/486049?type=post&order=time&pos=&page=1&channel=666&source_id=search_post
来源:牛客网

python分代回收中的数据结构
python中的回收对象怎么快速确定内存位置
python回收内存溢出情况,怎么检查以及处理
什么是python元类
python库?
python进程/线程/协程
python协程怎么使用
python死锁怎么处理?怎么避免

【注意!一旦遇到环状问题,记得(i + 1) % n!】

如哲学家恰饭问题:

order=time&pos=&page=1&channel=666&source_id=search_post
来源:牛客网

python分代回收中的数据结构
python中的回收对象怎么快速确定内存位置
python回收内存溢出情况,怎么检查以及处理
什么是python元类
python库?
python进程/线程/协程
python协程怎么使用
python死锁怎么处理?怎么避免

【注意!一旦遇到环状问题,记得(i + 1) % n!】

如哲学家恰饭问题:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WIBWc2u1-1603615309661)(D:\学习笔记\放在typora里的图片\1597739710539.png)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值