V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Veigar
V2EX  ›  问与答

一个很简单的面试题,几乎无人能完整回答出答案

  •  
  •   Veigar · 2019-01-24 14:14:33 +08:00 · 1368 次点击
    这是一个创建于 2161 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请详细描述使用 google 时,点击搜索按钮后,发生了什么?

    1. 浏览器执行表单的 submit 事件
    2. https://www.google.com/search 发起 get 请求
    3. 操作系统向 DNS 服务器发起解析请求
    4. DNS 服务器一步步向上级服务器查询
    5. 返回解析得到的服务器的 IP 地址
    6. 系统向目标 IP 发送 ACK 握手
    7. 低层网卡驱动把 ACK 转换为电信号传到路由器
    8. 路由器解码电信息为数字信号并查表转发数据包
    9. 数据包最终到达 google 服务器
    10. 服务器查询数据库得到对应的数据
    11. 向用户返回查到的数据
    12. 用户主机收到返回数据后解码
    13. 交由浏览器调用操作系统渲染
    14. 渲染后由操作系统向显卡发出显指令
    15. 显卡向显示器发送待显示的数据
    16. 显示器芯片收到数据后解码,并最终点亮屏幕上指定像素点。显示出信息

    抛砖引玉,上面还缺很多东西, 比如说系统是怎么知道你点击了 submit 系统是如何解析这些指令的,各种芯片是怎么工作的,数字指令是如何通过门电路数模电路等转换成光信号的.. google 数据库的数据是怎么查的,缓存是怎么做的,google 的数据是怎么来的爬虫是怎么工作的。。等等 欢迎补充。。。 如果满分是 100 分的话 我这个回答应该算是 0.00000001 分

    5 条回复    2019-01-25 13:20:37 +08:00
    leafin
        1
    leafin  
       2019-01-24 14:56:26 +08:00
    像你这样无限深入下去有意思吗?
    要不要再讲一下光信号如何传递,电磁力如何使光子运动?
    whileFalse
        2
    whileFalse  
       2019-01-24 14:56:46 +08:00
    简单吗?

    LZ 是不是在自 HIGH。
    lance6716
        3
    lance6716  
       2019-01-24 16:00:35 +08:00 via Android
    点击鼠标簧片震动,如何去抖动,通过什么物理方法转换为电信号,如何编码为鼠标输出的数字信号,服从什么协议发送给电脑。
    电脑如何通过鼠标当前坐标确定位于哪个窗口上,浏览器如何确定哪个元素响应点击,如何在浏览器接口的基础上实现点击回调函数。
    淦,吾生而有涯
    zhaishunqi
        4
    zhaishunqi  
       2019-01-24 16:39:57 +08:00
    应该是按照你面试的岗位有针对性的说明吧...
    这么瞎胡扯,HR 会觉得你这个人理解能力有问题。。。
    dingxi
        5
    dingxi  
       2019-01-25 13:20:37 +08:00
    标题风格很像 UC 段子:简单,几乎无人。震惊.jpg
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3020 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 13:22 · PVG 21:22 · LAX 05:22 · JFK 08:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.