`

Google & Twitter Interview

 
阅读更多

T家:

什么是僵尸进程?如何列出所有的僵尸进程?如何获得这
些僵尸进程的 PID?如何把它们终止?我用 ps grep awk xargs 配合管道把这几个问
题用一行命令行解决了,他很满意。

第二问是统计一个 httpd 的访问日志中,访问量最大的前五个 IP。我用 Ruby 写了一
个,六行代码就能搞定。

接着面试官了解 DNS 吗,如果浏览器没法上网一般怎么诊断?我的回答是先 dig 看 
DNS 解析是否正确,然后用 ping 判断 IP 是否可以访问,再用 curl 看是不是浏览器
设置的问题。最后还可以用类似 www.websitedown.info 的服务检查。

第四个问题是怎么把一个文件复制到多个机器上?我说可以先用 ssh-copy-id 把公钥
拷过去,然后再用 scp 拷文件。面试官说这样机器多就麻烦了。我解释到可以用 
expect 写脚本自动输入密码,还加了句当然也可以用 Twitter 的开源工具 murder 分
布式部署。

第五问是文件系统中 soft link 和 hard link 的区别。我的解释是 soft link 是一
种特殊的文件,它的内容是被指向的文件的路径,而 hard link 是直接指向 inode 的
。所以 soft link 可以用于目录,但是 hard link 不可以。

文件系统中 inode 和 path 的区别。我回答是 inode 是文件系统的一个数据结构,指
向某个磁盘上的文件;而 path 是由多个 struct dentry 组成的,每个 dentry 描述
了 inode 的父子关系。

最后一问是如何修改 DNS 服务器?我说可以修改 /etc/resolve.conf。

 

G家:
phone screen interview 

First round:
1. check if a string is anagram  (geeks很喜欢问这个问题,遇到说话磕磕绊绊但
发音标准的哥哥,应该就是geek了)
2. Given a matrix which contains black and white grids, use a method to find
out if the white grids are connected or not, if yes, return true.
第一次想的是recursion,后来写的时候用的是DP,但是发现不对,想了一下,用了图
论的解法,满打满算的写完了。之后不到半个小时就安排了第二次面试

Second round:
1.  Design an API which is used for a cache big data
2.  Given a string, find longest substring which contains just two unique 
characters. 

 

From:

http://jiangweiyu.tumblr.com/page/5

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics