标签归档:Linux

socket close shutdown函数区别

close() 关闭这个socket销毁内存中数据,如果多个进程复用,只影响单个进程。
shutdown() 并不销毁内存中socket,如果多个进程复用,会影响所有进程。

如果接受缓冲区内还有数据没recv完,调用close()会出发RST报文,此时先调用shutdown,再调用close则能正常关闭。

Linux清理磁盘cache

Linux下sync命令可以将脏数据flush入磁盘。如果想要将所有的缓存也清除,必须在sync之后执行

清除page cache
echo 1 > /proc/sys/vm/drop_caches

清除 dentries & inodes
echo 2 > /proc/sys/vm/drop_caches

同时清除page cache和dentries以及inodes
echo 3 > /proc/sys/vm/drop_caches

记得必须先执行sync不然脏数据的缓存是不会被清除的。

fedora16升级到fedora17

因为学校网络的问题,前段时间都没在我心爱的fedora下工作了,最近在外面公司顶岗实习,正好茶博会我留守公司值班,闲来之余好好利用公司的网络把我的fedora16升级到了17。升级过程中还是遇到了一些小问题,在这里写成note希望遇到相同问题的童鞋可以参考。
继续阅读

linux启动后黑屏

昨天升级了fedora,今天早上起来发现开机黑屏了,这是很常见的问题,fedora升级导致了我的amd显卡驱动错误,其实解决方法很简单,只要把xorg.conf删除,然它重新生成默认的xorg.conf,使用linux自带的显卡驱动即可。
开机黑屏了?不要紧,启动选择recovery mode执行下面命令

rm /etc/X11/xorg.conf

如果担心直接删除不大好,可以将他重命名:

mv /etc/X11/xorg.conf /etc/X11/xorg.conf.bak

之后重启

reboot

就可以了,别忘了现在你用的是linux自带的显卡驱动,赶紧去amd,或者nvdia的官网下载安装最新的显卡驱动吧。