linux网络编程笔记
一 三种类型的套接字:
1.流式套接字(SOCKET_STREAM)
提供面向连接的可靠的数据传输服务。数据被看作是字节流,无长度限制。例如FTP协议就采用这种。
2.数据报式套接字(SOCKET_DGRAM)
提供无连接的数据传输服务,不保证可靠性。
3.原始式套接字(SOCKET_RAW)
该接口允许对较低层次协议,如IP,ICMP直接访问。
二 基本套接字系统调有有如下一些:
创建套接字: socket()
绑定本机端口: bind()
建立连接: connect(),accept()
侦听端口: listen()
数据传输: send(), recv()
输入/输出多路复用: select()
关闭套接只: closesocket()
三 数据类型
struct sockaddr
{
unsigned short sa_family; //地址族, 一般为AF_INET
char sa_data[14]; //14字节的协议地址
}
struct sockaddr_in
{
short int sin_family; //地址族
unsigned short int sin_port; //端口号
struct in_addr in_addr; //ip地址
unsigned char sin_zero[8]; //填充
}
四 常用函数
1 socket()
头文件:
#include <sys/types.h>
#include <sys/socket.h>
相关文档:
创建桌面图标
目前将网络应用扩展到桌面是一个趋势,存在着很多解决方案,本文以 Mozilla Prism 为例,类似的方法同样适用于 Google Chrome 。
1. 到 Mozilla Prism 的网站上下载 Prism,点击 Download Now 之后会提示有两种,一种是以 Mozilla Firefox 扩展的方式,适合已经安装有 Firefox 的朋友;一� ......
标准信号与实时信号
0-31 这 32 个信号称为标准信号。
从 32 到 63 之间的 32 个信号称为实时信号。
可以通过 man 7
signal 查看对“标准信号”和“实时信号”详细的描述。
信号排队
每个进程拥有一个信号等待队列。在 task_struct 中有一个 struct sigpending pending 域,
就是进程的信号 ......
这几天我安装了一个Linux系统,想在里面学一下C语言的编写,发现在里面运行有一个好奇怪的现象:如下面
#include<stdio.h>
void mian(){
printf("hello world!");
}
输出没有结果!搞的我看了半天,程序没有错误啊!怎么这样!后来我把程序改为
#include<stdio.h>
void mian(){
printf("hello ......
[root@localhost root]# ls -l
会显示目录或文件信息:drwxr-xr-x 2 root root 4096 06-29 14:30 Test
-rwxr--r-- 2 root roo ......