linux socket入门 (一) 基础篇1

原创文章,可以任意转载,转载请注明出处:http://we029.com

环境:fedora 13 linux

编译器:linux g++(GCC) 4.4.4 20100630

一、基础篇

1.为什么是linux?

首先,linux不要钱,放心大胆的用,没有版权一说,很多标准支持很好,用来学习C++实在是再好不过了。

其次,windows下的socket其实也是基于伯克利的,和linux下的socket没有本质的区别,只是在较高层次上封装了一下并做了一些扩展。

更重要的是我实在搞不明白如何让.NET开发工具只安装我想要的东西,那玩意是在太臃肿了。

2.好了,废话少说,进入正题,一个基本的socket流程包括如下的部分:

常用的传输协议有两种类型有面向连接TCP协议和数据报协议UDP。

首先说下面向连接的协议,服务器端要建立一个socket,然后绑定(bind)到某个端口,然后监听(listen)该端口的连接,一旦有连接请求,就把这个请求放入连接队列,直到有accept()处理该连接,然后打开一个新的socket来处理现有连接,原socket仍在旧端口监听。然后服务器端可以接收客户端发来的数据或向客户端发送数据。完成之后关闭socket,释放为其分配的资源。

以下为详细过程:

1)服务器端:

1.1.1 首先创建一个socket文件描述符。

相关函数:

#include <sys/socket.h>

/* Create a new socket of type TYPE in domain DOMAIN, using

protocol PROTOCOL. If PROTOCOL is zero, one is chosen automatically.

Returns a file descriptor for the new socket, or -1 for errors. */

int socket (int __domain, int __type, int __protocol) __THROW;

继续阅读

发表在 C/C++, SOCKET | linux socket入门 (一) 基础篇1已关闭评论

Dell vostro 3400 无线网卡在fedora 13的驱动安装

新买的dell vostro3400 无线网卡在linux下不识别,以下是我的系统情况

Fedora13
kernel 2.6.33.6-147.2.4.fc13.x86_86

自身无法识别dell自带的网卡

1.查看硬件情况:

#   lspci

在上面可以看到(倒数第二行)BCM43224 802.11a/b/g/n

然后去broadcom官方下载驱动:

http://www.broadcom.com/support/802.11/linux_sta.php 

根据自己的系统架构选择32位或者64位的驱动包。

先检查自己的kernel-header有没有

rpm -qa | grep kernel



2.解压文件下载下来的驱动包
3.进入解压的目录
4.

  #make clean
  #make

这样,就产生了一个 wl.ko 的文件

#cp wl.ko /lib/modules/<kernel-verson>/kernel/net/wireless/
#depmod
#modprobe
 WARNING: Deprecated config file /etc/modprobe.conf, all config files belong into /etc/modprobe.d/.

All Done!
点击右上角的Network Manager 图标,看看会发生什么?尽情享受无线的乐趣吧!

发表在 linux | Dell vostro 3400 无线网卡在fedora 13的驱动安装已关闭评论

apache 错误(OS 10022)提供了一个无效的参数。解决方案

今天在windows下安装xampp套装时apache无法正常启动,具体现象如下:

1.当apache安装为服务时无法启动,在windows服务管理器中启动服务时提示:服务启动后又关闭……

继续阅读

发表在 LAMP | apache 错误(OS 10022)提供了一个无效的参数。解决方案已关闭评论

解决L.A.M.P下浏览器无法正确识别编码而导致乱码的方法

现象:

打开一个gbk编码的网页(例如discuz!等),页面文字部分全部乱码,查看页面源代码,在头部可以找到

[code]

<meta http-equiv="Content-Type" content="text/html; charset=gbk" />

[/code]

打开浏览器的页面编码,发现是unicode编码,调整编码到gbk页面显示正常,刷新之后页面又回到乱码状态 继续阅读

发表在 LAMP | 解决L.A.M.P下浏览器无法正确识别编码而导致乱码的方法已关闭评论

发表在 未分类 | 已关闭评论

期待fedora13

离fedora13的发布还有几个小时了,期待中……希望这次的版本不错,

发表在 心情 | 标签为 | 期待fedora13已关闭评论

Windows 下APACHE2.2.x+Tomcat6.0+HOST虚拟主机配置

假设:服务器通过tomcat6.0使用8080端口对外提供服务,Apache2.2.14提供负载均衡,通过使用AJP 1.3 实现负载均衡 继续阅读

发表在 服务器 | Windows 下APACHE2.2.x+Tomcat6.0+HOST虚拟主机配置已关闭评论

请叫我环保主义者

今天有车了,还是自行的!以后我也是有车一族了,请叫我环保主义者

发表在 | 请叫我环保主义者已关闭评论