操作系统

  • 进程和线程的区别

进程一个独立的运行实例,有独立的内存空间和系统资源,相互影响小,进程切换开销大,并发性能小。

线程是进程内的执行单元,共享内存和资源,线程切换开销小, 并发性能好, 需要注意同步和互斥来来保障安全【读写锁,原子操作、互斥锁等】

  • load和idle的区别

load是处于可运行或不可中断状态的平均进程数, 有1,2,5分钟的数据。[原因: 内存不足, io不足,cpu核数少]

idle表示系统的 CPU 空闲时间或 CPU 空闲百分比。这是指在一定时间内 CPU 没有被任务占用的时间比例。

load关注系统运行状态和进程等待情况,而idle关注 CPU 的空闲时间

  • buffer和cache的区别是什么

buffer也用于存储数据,但它的主要目标是优化数据传输的过程,减少磁盘 I/O 操作的次数,以提高效率,正在进行数据传输的临时存储区域,如正在读取或写入到磁盘的数据块。

cache存储最近访问的数据的高速存储区域。它的主要目标是减少对慢速存储设备(如硬盘)的访问次数,从而提高读取数据的速度。

Cache 主要用于存储经过选择和优化的数据,以提高数据访问速度,而Buffer 主要用于管理数据传输的过程,以优化磁盘 I/O 操作

  • 软中断和中断的区别是什么?
  • 分布式文件系统的的类型和一般原理

DFS旨在提供可靠性、容错性、扩展性和性能优化,以满足分布式计算和存储的需求。 gfs, hdfs, nfs, ipsan, Ceph