- 博客(62)
- 资源 (14)
- 收藏
- 关注
原创 不相关进程间通信--命名管道(FIFO文件)
命名管道是一种特殊类型的文件(FIFO),可以完成两个不相关之间的通信。它在文件系统中以文件名的方式存在,但行为却和一般的管道相似。一.创建FIFO在程序中,可以使用两个不同的函数调用创建:#include #include int mkfifo(const char *filename, mode_t mode);int mknod(const c
2011-12-26 16:40:21
2257
原创 进程通信--进程管道
进程间通信的几种常用方式:管道、命名管道、信号、信号量、共享内存、消息队列、套接字。管道( pipe ):一种半双工的通信方式,数据只能单向流动且只能在具有共同祖先的进程间使用。命名管道 (name pipe):也是一种半双工的通信方式,但他允许不相关进程间的通信。信号( sinal ):一个进程通过信号通知其他进程某事件已经发生,其他进程的反应如何及何时反应他都不管。信号
2011-12-26 13:33:06
1833
转载 apache2 c module
【环境准备 - 按照Apache2及Module Dev】在Ubuntu的控制台中输入:apt-get install apache2 apache2-threaded-dev注意:安装后,apache2路径在/usr/lib/apache2下,而Module开发工具在/usr/bin下。apache2配置文件在/etc/apache2下,而工作路径在/var/www下环境验证
2011-12-19 16:36:35
1243
原创 libcurl简单接口的使用(FTP)
教材:linux环境C程序设计 徐诚 高莹婷 网络资料一. 文件传输协议(File Transfer Protocol)是进行文件传输的一套标准协议,属于TCP/IP协议的一部分。FTP服务一般在20和21两个端口。其中20用于数据连接,21用于控制连接。FTP有两种使用模式:主动模式和被动模式。主动模式安全性高,要求服务端和客户端各打开一个端口并监听以建立连接,但客户端的防火墙可能阻
2011-12-16 11:06:49
13395
原创 RFC959阅读笔记
一.几个术语1.权限控制:定义用户在系统中可使用的权限和对系统中文件的操作权限。2.FTP有两种字节大小:文件的逻辑字节大小和数据传输字节大小。传输字节大小通常是8位,实验室不必与系统中存储数据的字节大小有联系。3.PI:协议解释器,用户和服务器各有一个,即user-PI与server-PI。 user-PI:发起控制连接,初始化FTP指令,管理user-FTP
2011-12-15 17:52:48
4586
转载 windowsxp IIS FTP服务器架设
FTP服务器架设--架设篇 架设一台FTP服务器其实很简单。首先,要保证你的机器能上网,而且有不低于ADSL 512Kbps的网络速度。其次,硬件性能要能满足你的需要。最后,需要安装FTP服务器端的软件,这类软件很多,可以使用微软的 IIS(Internet Information Server 因特网信息服务系统),也可以使用专业软件。不同的软件提供的功能不同,适应的需求和操作系统也不
2011-12-15 14:08:19
2399
转载 Ubuntu自带的FTP服务器是vsftpd 设置
Ubuntu自带的FTP服务器是vsftpd一、安装vsftpdsudo apt-get install vsftpd安装了之后会在/home/下建立一个ftp目录。这时候你可以试着访问下ftp://IP地 址。应该可以看到一个空白内容的ftp空间。默认设置下匿名用户可以下载,但不能写入或是上传二、设置 vsftpd.conf文件现在我们要让匿名
2011-12-15 11:40:30
2550
原创 套接字 学习笔记四 书本例子
1.客户端程序#include#include #include #include #include #include #include int main(){ int sockfd; int len; struct sockaddr_in address; int result; char ch[255]
2011-11-21 14:46:44
760
原创 套接字 学习笔记三 select函数
编写linux应用程序时,经常会遇到需要检查好几个输入状态才能确定下一步行动的情况,这种情况可称之为忙等待。在单用户系统中运行一个忙等待是可以接受的,它不停地扫描输入设备看是否有数据,如果有数据到达才读取它。这种做法很耗cpu时间。select函数(这里函数又称调用、系统调用)检查一个由多个文件描述符组成的集合;如果集合中有描述符处于输入、输出、出错状态,select就返回处于这些状态的描
2011-11-21 14:45:07
855
原创 套接字 学习笔记二
主要是网络套接字笔记 linux平台1.使用网络套接字,通常要先用一个未被使用的端口(大于1024-小于它的端口是系统保留端口,且之前该端口没有在/etc/services中列出)。如果有足够的权限,可以将自己的服务端口添加到/etc/services文件的已知服务列表中,并为该服务分配一个服务名,这样用户也可以通过服务名而不是端口号来访问服务端程序。 #include struct
2011-11-18 17:47:28
755
原创 socket套接字 学习笔记一
教材:《linux程序设计第三版》1.流程简述 服务端: (1).首先,服务器应用程序用系统调用socket来声明二个套接字描述符;并用其中一个来为服务器创建一个未命名的套接字,它是系统分配给该服务器的一个类似文件描述符的资源,且不能被其他进程共享。 (2).接下给套接字命名,指定套接字地址。 (3).创建套接字队列,用于保存未处理的请求。 (4).接收客户端的连接
2011-11-18 15:17:16
2213
原创 glib库 socket通信相关的几个函数和数据结构 (二) 打开连接 发送 接收和关闭连接
1.网络通信时几个阶段都需要三种数据: GSocketConnection *conn; // 用于数据服务 GInputStream *input; // 用于接收消息 GOutputStream *output; // 用于发送消息2.打开连接 首先创建一个用于监听和接收连接的辅助对
2011-11-11 13:43:43
3821
原创 glib库 通信相关的几个函数和数据结构(-)GSocketConnection
1.概述GSocketConnection是一种用于socket连接的结构。他在gobject中的继承关系如下: GObject +----GIOStream +----GSocketConnection +----GTcpConnection +----GUnixConnec
2011-11-09 18:14:30
2847
原创 linux下vbox使用U盘
记大本子上过段时间就翻不到了,干脆写在这1.设置->USB->启用USB控制器->右边的按钮(添加一个空筛选器)。这一步在关虚拟操作系统2.sudo usermod -aG vboxusers linux中的用户名3.重启linux,打开vbox中的虚拟操作系统,插入U盘就OK~~
2011-11-04 17:49:29
3330
1
原创 tcl/tk学习笔记:字符串(二)string命令集
1.从字符串中获取字符 string index 和string rangestring index string n; 获取string的第n个字符,从0开始算例 string index "Sample string" 3; 结果是p。string range string n1 n2;获取string的第n1到n2个字符例 string range "Sample
2011-11-01 16:44:37
29052
原创 tcl/tk学习笔记:字符串
教材:陈涛.Tcl 编程初步 tcl/tk入门经典(2)1.几个有用的命令append 将值追加到字符串尾format 字符串格式scan 字符串分解binary 二进制字符串操作string options 字符串操作和命令集su
2011-11-01 14:58:15
16095
原创 tcl/tk学习笔记:数学表达式与 expr 命令
教材:陈涛 Tcl 编程初步 tcl/tk入门经典(2)1.除了自加自减,tcl的数学和逻辑运算符,运算符优先级,数学函数与相似。2.自加自减速运算用incr命令完成incr varName ?step? 没有后一个参数表示加1,incr a -n表示减n。3.expr命令将它的参数做表达式处理。expr 4+2;expr log10(100);4.if语句这个命
2011-10-31 17:30:21
29027
原创 tcl/tk学习笔记:输出、赋值与替换
教材:陈涛 tcl编程初步1.puts ?-nonewline? ?channelId? string 将string的值的输出到标准输出通道channelId,-nonewline表示不换行,输出后光标会停在输出行末,channelId是输出通道,如文件描述符、套接字描述符。有空格的字符串要用""或{}括起来。2.set varName [value] unset
2011-10-31 15:51:01
9779
原创 tcl/tk学习笔记:基本知识
教材:陈涛 Tcl 编程初步1.Tool command Languag是基于字符串的命令语言,同时也是一种解释语言,不需要编译和连接2.命令格式:命令 参数1 参数2 ... 有些命令没有参数,也在些可能有一个或多个参数3.tcl脚本的运行方式:一种使用“source 脚本文件”,一种是可执行脚本文件4.可执行脚本文件:这样的脚本文件以类似“#!/usr/bin/wish -f”
2011-10-31 15:18:52
2421
转载 ubuntu安装eclipse
ubuntu安装eclipse 有两种安装方法,第一种,通过ubuntu自带的程序安装功能,安装Eclipse,应用程序,Ubtuntu软件中心,搜索eclipse安装即可 第二中,终端安装,sudo apt-get install eclipse,
2011-10-09 10:26:05
1539
原创 判断一个字符串中是否包含某个字符
列了三种方法:1.循环遍历;这个不用多说。2.集合分组;可以按某种规则分组,比如ASCII码相邻的为一组,举例在“321@bcds”中找'c',分组排序为“123”,“@”,“bcd”,“s”,将分好的组存入一个静态变量中,供多次调用。3.类似bitmap图的方法;还是举ASCII码为例,可将256个ASCII字符按某类规则放入一个8*32的表中(这里可以按除8取余的方式),被查字符串
2011-10-08 14:44:55
6555
1
原创 gtk+安装与遇到的一些问题
因近涉及到界面程序需要安装gtk+,上网找了一些东西,比如《gtk+安装步骤》,对着做时也碰到一些问题,在此记录下来安装前要确定各软件的版本,有些版本太老会导致后续版本安装失败,最懒的方法是都下载最新的 http://ftp.acc.umu.se/pub/gnome/sour
2011-10-08 12:39:07
2530
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人