Veigar
V2EX  ›  问与答

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

  •  
  •   Veigar · Jan 24, 2019 · 1741 views
    This topic created in 2685 days ago, the information mentioned may be changed or developed.

    请详细描述使用 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 replies    2019-01-25 13:20:37 +08:00
    leafin
        1
    leafin  
       Jan 24, 2019
    像你这样无限深入下去有意思吗?
    要不要再讲一下光信号如何传递,电磁力如何使光子运动?
    whileFalse
        2
    whileFalse  
       Jan 24, 2019
    简单吗?

    LZ 是不是在自 HIGH。
    lance6716
        3
    lance6716  
       Jan 24, 2019 via Android
    点击鼠标簧片震动,如何去抖动,通过什么物理方法转换为电信号,如何编码为鼠标输出的数字信号,服从什么协议发送给电脑。
    电脑如何通过鼠标当前坐标确定位于哪个窗口上,浏览器如何确定哪个元素响应点击,如何在浏览器接口的基础上实现点击回调函数。
    淦,吾生而有涯
    zhaishunqi
        4
    zhaishunqi  
       Jan 24, 2019
    应该是按照你面试的岗位有针对性的说明吧...
    这么瞎胡扯,HR 会觉得你这个人理解能力有问题。。。
    dingxi
        5
    dingxi  
       Jan 25, 2019
    标题风格很像 UC 段子:简单,几乎无人。震惊.jpg
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1230 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 5414617a · 40ms · UTC 17:28 · PVG 01:28 · LAX 10:28 · JFK 13:28
    ♥ Do have faith in what you're doing.