操作系统-linux
操作系统
Linux 系统下你关注过哪些内核参数,说说你知道的。
Tcp/ip io cpu memory
net.ipv4.tcp_syncookies = 1
#启用syncookies
net.ipv4.tcp_max_syn_backlog = 8192
#SYN队列长度
net.ipv4.tcp_synack_retries=2
#SYN ACK重试次数
net.ipv4.tcp_fin_timeout = 30
#主动关闭方FIN-WAIT-2超时时间
net.ipv4.tcp_keepalive_time = 1200
#TCP发送keepalive消息的频度
net.ipv4.tcp_tw_reuse = 1
#开启TIME-WAIT重用
net.ipv4.tcp_tw_recycle = 1
#开启TIME-WAIT快速回收
net.ipv4.ip_local_port_range = 1024 65000
#向外连接的端口范围
net.ipv4.tcp_max_tw_buckets = 5000
#最大TIME-WAIT数量,超过立即清除
net.ipv4.tcp_syn_retries = 2
#SYN重试次数
echo “fs.file-max=65535” >> /etc/sysctl.conf
sysctl -p
http://www.haiyun.me/category/system/
Linux 下 IO 模型有几种,各自的含义是什么。
阻塞式io,非阻塞io,io复用模型,信号驱动io模型,异步io模型。
https://yq.aliyun.com/articles/46404
https://yq.aliyun.com/articles/46402
epoll 和 poll 有什么区别。
select的本质是采用32个整数的32位,即32*32= 1024来标识,fd值为1-1024。当fd的值超过1024限制时,就必须修改FD_SETSIZE的大小。这个时候就可以标识32*max值范围的fd。
对于单进程多线程,每个线程处理多个fd的情况,select是不适合的。
1.所有的线程均是从1-32*max进行扫描,每个线程处理的均是一段fd值,这样做有点浪费
2.1024上限问题,一个处理多个用户的进程,fd值远远大于1024
所以这个时候应该采用poll,
poll传递的是数组头指针和该数组的长度,只要数组的长度不是很长,性能还是很不错的,因为poll一次在内核中申请4K(一个页的大小来存放fd),尽量控制在4K以内
epoll还是poll的一种优化,返回后不需要对所有的fd进行遍历,在内核中维持了fd的列表。select和poll是将这个内核列表维持在用户态,然后传递到内核中。但是只有在2.6的内核才支持。
epoll更适合于处理大量的fd ,且活跃fd不是很多的情况,毕竟fd较多还是一个串行的操作
https://yq.aliyun.com/articles/10525
平时用到哪些 Linux 命令。
Ls,find,tar,tail,cp,rm,vi,grep,ps,pkill等等
https://yq.aliyun.com/articles/69417?spm=5176.100240.searchblog.18.Zrbh9R
用一行命令查看文件的最后五行。
Tail -n 5 filename
用一行命令输出正在运行的 java 进程。
ps -ef|grep Java
介绍下你理解的操作系统中线程切换过程。
控制权的转换,根据优先级切换上下文(用户,寄存器,系统)
http://www.cnblogs.com/kkshaq/p/4544426.html
进程和线程的区别。
Linux 实现并没有区分这两个概念(进程和线程)
1. 进程:程序的一次执行
2. 线程:CPU的基本调度单位
一个进程可以包含多个线程。
http://www.ruanyifeng.com/blog/2013/04/processes_and_threads.html
操作系统
1. Linux 系统下你关注过哪些内核参数,说说你知道的。
2. Linux 下 IO 模型有几种,各自的含义是什么。
3. epoll 和 poll 有什么区别。
4. 平时用到哪些 Linux 命令。
5. 用一行命令查看文件的最后五行。
[plain] view plain copy
- 输出test文件的后五行:
- liyi@liyi:~/Desktop > tail -n 5 test
- 输出test文件的前五行:
- liyi@liyi:~/Desktop > head -n 5 test
6. 用一行命令输出正在运行的 java 进程。
7. 介绍下你理解的操作系统中线程切换过程。
8. 进程和线程的区别。
操作系统-linux相关推荐
- linux学 java_[操作系统]Linux学习第二步(Java环境安装)
[操作系统]Linux学习第二步(Java环境安装) 0 2017-05-19 00:02:21 jdk版本:jdk-8u131-linux-x64.rpm 注:以下操作在root用户或具有root权 ...
- 麒麟操作系统|Linux下低延时RTMP|RTSP直播播放实现
背景 国产操作系统多为以Linux为基础二次开发的操作系统.2014年4月8日起,美国微软公司停止了对Windows XP SP3操作系统提供服务支持,这引起了社会和广大用户的广泛关注和对信息安全的担 ...
- linux复制压缩文件夹,[操作系统]linux中文件或者文件夹的基本操作(复制,移动,删除,查找,压缩)...
[操作系统]linux中文件或者文件夹的基本操作(复制,移动,删除,查找,压缩) 0 2015-12-28 00:00:15 linux 文件(文件夹)的创建,复制,移动,重命名,删除基本命令 复制文 ...
- linux系统关于mysql的命令_[操作系统]Linux 操作MySql命令
[操作系统]Linux 操作MySql命令 0 2016-11-08 10:00:42 1.安装MySql服务端命令: yum install mysql-server yum install mys ...
- 操作系统---linux
1. 从认识操作系统开始 1.1. 操作系统简介 我通过以下四点介绍什么是操作系统: 操作系统(Operating System,简称 OS)是管理计算机硬件与软件资源的程序,是计算机的基石. 操作系 ...
- 服务器操作系统linux,关于服务器的操作系统
1.服务器操作系统都有哪些? 服务器操作系统一般分两类,一类是linux占据了大量的服务器市场份额,一类是windows server占有少量的市场份额.服务器操作系统的市场和PC操作系统的市场恰巧是 ...
- 观察Linux进程 线程的异步并发执行,操作系统linux版实验报告.doc
操作系统linux版实验报告.doc (29页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 19.90 积分 操作系统实验报告(Linux版)网络142 ...
- linux系统charp命令,操作系统 Linux系统
Linux操作系统 预备知识(Operating System): 1.GNU项目,GNU项目是一个自由软件项目,旨在建立一个完全自由开放通用的UNIX软件平台. 2.操作系统:管理计算机硬件和软件资 ...
- 嵌入式linux操作系统安装,嵌入式操作系统-linux安装.ppt
<嵌入式操作系统-linux安装.ppt>由会员分享,可在线阅读,更多相关<嵌入式操作系统-linux安装.ppt(42页珍藏版)>请在装配图网上搜索. 1.开始安装 新建虚拟 ...
最新文章
- linux中html的图片显示不出来,如何在HTML中显示原始的rgb图像
- 增加和删除用户组与用户
- 马拦过河卒(NOIP2002)
- PIC单片机 按键检测识别
- 【struts2+hibernate+spring项目实战】数据报表jxl及生成excel(ssh项目实战)
- WordPress后台的文章、分类,媒体,页面,评论,链接等所有信息中显示ID并将ID设置为第一列...
- Innodb内核线程并发机制
- QQ网页链接打开本地QQ.exe原理
- vue + elementUI 框架下给el-table 增加一条数据,默认滚动条定位到表格的最底部
- python改错题重要的事情说三遍_5个很好的Python面试题问题答案及分析
- SIFT算法论文:译文、详解
- 工业AI落地场景案例实战,飞桨EasyDL让工业更智能
- Unity 5.3 官方VR教程(二) 创建第一个VR项目
- 基于证书的反垃圾邮件系统
- ESP32 开发笔记(三)源码示例 10_IIC_ADXL345 使用IIC总线实现读取ADXL345角度加速度传感器
- APM —全链路追踪
- 中国联通GPON/4+1+WiFi(2.4G)TEWA-800G型号光猫网页源代码分享
- 父亲节华为P40软文营销广告
- 智能对话系统:Unit对话API
- 旋转编码器怎么调零点?