每天被面试虐一点点(五)

时间:2021-01-04 14:15:06

1    内核分为 进程管理系统 、 内存管理系统 、 I/O管理系统 和文件管理系统 等四个子系统。


2    子进程如果对资源只是进行读操作,那么完全和父进程共享物理地址空间。


3   bash中,需要将脚本demo.sh的标准输出和标准错误输出重定向至文件demo.log

      

         bash  demo.sh &>demo.log
         bash  demo.sh >demo.log 2>&1


4 关于Linux系统的负载(Load)

linux系统中的Load对当前CPU工作量的度量。简单的说是进程队列的长度。Load Average 就是一段时间 (1 分钟、5分钟、15分钟) 内平均 Load 。通过系统命令"w"查看当前load average情况

http://www.cnblogs.com/kaituorensheng/p/4493145.html


5  uptime 命令用于查看服务器运行了多长时间以及有多少个用户登录,快速获知服务器的负荷情况。


6 下面有关Ext2和ext3文件系统的描述

  

ext2/ext3文件系统使用索引节点来记录文件信息,包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息
ext3增加了日志功能,即使在非正常关机后,系统也不需要检查文件系统
ext3文件系统能够极大地提高文件系统的完整性,避免了意外宕机对文件系统的破坏

EXT2、EXT3:linux环境上的文件系统。ext2/ext3文件系统使用索引节点来记录文件信息,作用像windows的文件分配表。索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。

EXT2、EXT3的区别如下:
(1)ext2和ext3的格式完全相同,只是在ext3硬盘最后面有一部分空间用来存放Journal(日志)的记录;
(2)在ext2中,写资料到硬盘中时,先将资料写入缓存中,当缓存写满时才会写入硬盘中;
(3)在ext3中,写资料到硬盘中时,先将资料写入缓存中,鼗缓存写满时系统先通知Journal,再将资料写入硬盘完成后再通知Journal,资料已完成写入工作;
(4)是否有Journal的差别:
在ext2中,系统开机时会去检查有效位(Valid bit),如果值为1,表示系统上次有正常关机;如果为0,表示上次关机未正常关机,那系统就会从头检查硬盘中的资料,这样时间会很长;
在ext3中,也就是有Journal机制里,系统开机时检查Journal的资料,来查看是否有错误产生,这样就快了很多;
(5)tune2fs –j 将ext2转换成ext3

Ext3 目前所支持的最大16TB 文件系统和最大2TB 文件,Ext4 分别支持 1EB(1,048,576TB, 1EB=1024PB, 1PB=1024TB)的文件系统,以及 16TB 的文件。


7   Fork后子进程保留了父进程的什么?

  

使用fork函数得到的子进程从父进程的继承了整个进程的地址空间,包括:进程上下文、进程堆栈、内存信息、打开的文件描述符、信号控制设置、进程优先级、进程组号、当前工作目录、根目录、资源限制、控制终端等。

子进程与父进程的区别在于:

1、父进程设置的锁,子进程不继承(因为如果是排它锁,被继承的话,矛盾了)

2、各自的进程ID和父进程ID不同

3、子进程的未决告警被清除;

4、子进程的未决信号集设置为空集。

http://www.cnblogs.com/mickole/p/3755631.html


8

产生死锁的4个必要条件:     1.互斥条件
    2.请求和保持条件
    3.不可抢占
    4.循环等待条件
预防死锁主要分为三种:     1.破坏请求和保持条件
    2.破坏不可抢占条件
    3.破坏循环等待条件
避免死锁同样属于事先预防的策略,但并不是事先采取某种限制措施,破坏产生思索的必要条件,而是在资源动态分配过程中,防止系统进入不安全状态,以避免发生死锁。 避免死锁的基本思想就是确保系统始终处于安全状态。最具有代表性的避免死锁的算法是Dijkstra的银行家算法。 死锁的解除方法(2种):     1.抢占资源
    2.终止(或撤销)进程。


9  银行家算法用于避免死锁,剥夺资源法用于解除死锁


10  在页式存储管理中,当CPU形成一个有效地址时,要查页表, MMU是Memory Management Unit的缩写,中文名是内存管理单元,它是*处理器(CPU)中用来管理虚拟存储器、物理存储器的控制线路,同时也负责虚拟地址映射为物理地址。这是地址映射的知识点,为了提高系统效率,逻辑地址到物理地址的映射,是由处理机中设置的专门硬件完成,即地址管理部件

10
pthread_create 创建一个线程
pthread_join用来等待一个线程的结束
pthread_mutex_init 初始化一个线程互斥锁
pthread_exit结束一个线程

11批量删除当前目录下后缀名为.c的文件。如a.c、b.c。
     rm *.c
    find . -name "*.c" -maxdepth 1 | xargs rm

12在请求分页 存储管理 中,从主存中刚刚移走某一页面后,根据请求马上又调进该页,这种反复调进调出的现象,称为系统颠簸,也叫系统抖动。原因是调度的算法不科学。系统抖动大大降低系统效率。解决办法:好的页 替换算法 ;减少运行的进程数;增大内存。

13
TCP/IP: 
数据链路层:ARP,RARP
网络层: IP,ICMP,IGMP
传输层:TCP ,UDP,UGP
应用层:Telnet,FTP,SMTP,SNMP.

OSI:
物理层:EIA/TIA-232, EIA/TIA-499, V.35, V.24, RJ45, Ethernet, 802.3, 802.5,FDDI, NRZI, NRZ, B8ZS
数据链路层:Frame Relay, HDLC, PPP, IEEE 802.3/802.2, FDDI, ATM,  IEEE 802.5/802.2
网络层:IP,IPX,AppleTalk DDP
传输层:TCP,UDP,SPX
会话层:RPC,SQL,NFS,NetBIOS,names,AppleTalk,ASP,DECnet,SCP
表示层:TIFF,GIF,JPEG,PICT,ASCII,EBCDIC,encryption,MPEG,MIDI,HTML
应用层:FTP,WWW,Telnet,NFS,SMTP,Gateway,SNMP


14


数据链路层层:差错控制 网络层:网络互连、路由选择、拥塞控制,通过寻址建立节点间连接 (网络层协议能补偿数据发送、传输以及接收的设备能力的不平衡性。分段和重组是指当数据从一个能处理较大数据单元的网络段传送到仅能处理较小数据单元的网络段时,网络层对数据包进行分段和重组,减小数据单元的大小)

传输层:流量控制
 

15 关于epoll和select的区别

  

epoll和select都是I/O多路复用的技术,都可以实现同时监听多个I/O事件的状态
epoll相比select效率更高,主要是基于其操作系统支持的I/O事件通知机制,而select是基于轮询机制
epoll支持水平触发和边沿触发两种模式