- 博客(7)
- 收藏
- 关注
原创 Linux下select调用引发的血案
WINDOWS平台下的select 的第一个参数是无意义的。 MSDN上面对参数有明确的说明: nfds [in] Ignored. The nfds parameter is included only for compatibility with Berkeley sockets. 那就是说,如果是使用Berkeley 伯克利的SOCKET的话,那么SELECT的第一个参
2011-12-14 12:22:48
975
原创 使用strace,ltrace调试工具的乐趣
前言:编写UNIX/LINUX系统程序让我冲满了乐趣。最近由于工作需要,我查看了df.c实现df命令的过程,偶然间了解了一个新的调试命令,就是关于strace。它可以让您真正的深入了解系统的功能,并且了解组合这些功能的各种各样的程序。它告诉了我关于UNIX/LINUX系统的底层的消息,带给我一个新的体验。使用strace工具,可以清楚的看清楚这些程序是如何调用,如何的使用参数。它的一切都暴露在
2011-12-14 12:21:51
1128
原创 深入探讨网络编程中的问题
1.阻塞模式与非阻塞模式下recv的返回值各代表什么意思?有没有区别?(就我目前了解阻塞与非阻塞recv返回值没有区分,都是 0:出错,=0:连接关闭,0接收到数据大小,特别:返回值 0时并且(errno == EINTR errno == EWOULDBLOCK errno == EAGAIN)的情况下认为连接是正常的,继续接收。只是阻塞模式下recv会阻塞着接收数据,非阻塞模式下如果没有数
2011-12-14 12:20:37
605
原创 WinAPI函数CreateProcess 关于创建无名管道通讯的不完美的实现
问题是什么?由于工作原因,需要移植一个基于WINDOWS IOCP模型的程序到LINUX去.由于在LINUX是没有完成端口的东西,那么这一点上面LINUX提供了我们一个叫EPOLL的网络模型.解决完这个问题,基本上我想程序应该不会有太大的移植问题了.但是当我看到ServiceManager管理器程序大篇大篇的使用WINDOWS API函数的时候,我当时简直有点失去信息了.统计出来一共30个WI
2011-12-14 12:19:13
2342
原创 有趣的UNIX信号
1、 前言1.1、 为什么要写这个上周写的一篇文章关于僵尸进程的处理办法,几乎收到了寥寥无几的回复。 在和老左在上周的一个下午专门讨论关于僵尸进程的处理办法,并提了另外一个解决的途径和方案。在讨论的过程又更加深入的探讨了关于信号的方面的问题。老左建议我把当天的讨论的东西在这周在写一篇文章发送给大家。1.2、 本文介绍什么 这是一篇介绍UNIX下面
2011-12-14 12:17:49
588
原创 究竟是什么占用了我们的内存
1、 前言 其实这个问题很早以前遇见过,也解决了。只是最近在我所属的山东A+P个贷系统推广项目上又发现新人在代码上出现了同样的问题。为了避免这样的问题再出现。所以在这里把这个问题给大家共享一下。2、 究竟还有什么东西占用了我们的系统资源相信在我们公司很多做C语言的程序员都遇到过这样一个问题,就是系统莫名其妙的资源被用完了。一般情况
2011-12-14 12:08:44
947
原创 yacc的使用
被遗忘的强大的工具UNIX系统的功能的之所以强大,不是在于它本身有多好的内核,而是在于它为我们提供了很多能完成小功能的命令,而这些命令的组合使用使得它更加的强大。其实在这里它为我们体现了这样的一个观点:要完成一个项目,或者是个大型的程序。应该先从小做起,然后不断的发展壮大。在本文中,主要为您介绍一写UNIX 系统下面的3 个命令的,似乎它不常用。可能make用得多一些,但是他们功能确实强大。yac
2006-08-28 14:41:00
2882
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人