看到一些试题,融合自己的理解,做了一些补充,慢慢总结更新。
1. 简述客户端请求网页里 a.css 的过程
这个问题主要要结合缓存说一下,那么就涉及协商缓存和强缓存。
每个 header 详细的作用规则,其实很难记住的。我找了两张图
这个图讲了大致的过程,没有什么要解释的。
这个是原博主的一个参考答案
其实两个答案都不算严谨,当然我也给不出严谨的答案。因为细节涉及其实挺多的,涉及 HTTP 协议的版本,浏览器的实现,以及多个缓存相关字段如何相互作用等。每次遇到这种问题,都是针对性的去梳理逻辑。
简单梳理了一下涉及到缓存的一些 Header:
通用 Header
- Cache-Control(1.1 之后)
- Pragma(1.1 之前)
请求 Header
- If-Match/If-None-Match
- If-Modified-Since/If-Unmodified-Since
响应 Header
- Etag
- Expires
- Last-Modified
2. Linux 如何查看某个进程的线程?
ps -T -p pid
,结果中 spid 就是线程号top -H -p pid
或top -p pid
然后按「H」pstree -p pid
3. 软连接的原文件删除,能否编辑此软链接?
可以编辑,编辑之后保存,相当于创建了新的文件,文件名和原文件相同。
4. 如何识别文件是否是硬链接
索引数大于 2,就存在硬链接。
5. 什么场景会造成 CPU 低而负载很高?
首先负载应该是指 Load Average 吧,Load Average 是指单位时间内,系统处于可运行状态和不可中断状态的平均进程数。
可运行状态进程包含两种:
- 正在使用 CPU 的进程
- 等待使用 CPU 的进程
不可中断状态进程:
- 正处于内核关键流程中的进程,这些进程不可打断。常见的就是等待硬件设备的 IO 响应
所以 CPU 低而负载很高,一般就是“等待使用 CPU 的进程”多,对应 CPU 抢占的情况。或者“不可中断状态进程”多,一般就是 IO 操作密集,或磁盘故障。
6. 为什么普通用户没有 /etc/passwd
的写权限,却可以修改密码?
因为 passwd
命令设置了 SetUID 权限。
相关命令
chmod u+s myfile # 设置 SetUID 权限
chmod g+s myfile # 设置 SetGID 权限
chmod o+t mydir # 设置粘滞位(stick bit) 权限
7. 查看 Linux 版本
cat /etc/issue
本文链接:https://blog.xiaoyuyu.cn/post/刷题.html,参与评论 »
--EOF--
发表于 2019-10-24 17:34:00。
本站使用「署名 4.0 国际」创作共享协议,转载请注明作者及原网址。更多说明 »
提醒:本文最后更新于 1968 天前,文中所描述的信息可能已发生改变,请谨慎使用。
Comments