自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fulinux的博客

Linux 、Android、Yocto 、BSP嵌入式开发工程师

  • 博客(3)
  • 资源 (41)
  • 论坛 (6)
  • 收藏
  • 关注

原创 OpenWrt的luci web管理器添加新菜单(四)

继前面三篇篇:OpenWrt的luci web管理器添加新菜单 、 OpenWrt的luci web管理器添加新菜单(二)和 OpenWrt的luci web管理器添加新菜单(三)本文将记录如何实现按键重启路由的功能步骤一:在/usr/lib/lua/luci/controller/admin/new_tab.lua 文件中加入如下内容:entry({"admin", "new_tab", "re

2015-10-09 16:52:51 4032

原创 OpenWrt的luci web管理器添加新菜单(三)

本文描述了openwrt如何实现Web界面,以及实现登录界面和配置文件解析等相关内容

2015-10-09 10:51:03 4309

原创 OpenWrt的luci web管理器添加新菜单(二)

继上一篇:OpenWrt的luci web管理器添加新菜单Call的方式:在/usr/lib/lua/luci/controller/admin/new_tab.lua 文件中添加如下红色部分的内容:-- Copyright 2008 fulinux -- Licensed to the public under the Apache License 2.0.local fs = require

2015-10-08 09:42:43 3897 1

fulinux庞杂技术要点汇总文档分享(1).zip

庞杂技术要点汇总文档分享,包含linux,yocto,android,thermal,高通平台,selinux,AT,编程等等多种知识内容。

2021-03-06

简易电阻电容电感测试仪程序

简易电阻电容电感测试仪程序

2012-05-25

简易电阻电容电感测试仪

简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪简易电阻电容电感测试仪 电阻电容电感测试仪 测试仪

2012-05-25

蹭网工具(有线)

蹭网工具 有线 免费上网

2012-01-05

msp430产生SPWM波程序

msp430产生SPWM波程序

2012-05-25

git服务搭建全过程

git服务搭建全过程

2020-11-11

telnet_clinet.zip

客户端和服务端 网络程序和普通的程序有一个最大的区别是网络程序是由两个部分组成的--客户端和服务器端. 客户端 在网络程序中,如果一个程序主动和外面的程序通信,那么我们把这个程序称为客户端程序。 比如我们使用ftp程序从另外一 个地方获取文件的时候,是我们的ftp程序主动同外面进行通信(获取文件), 所以这个地方我们的ftp程序就是客户端程序。 服务端 和客户端相对应的程序即为服务端程序。被动的等待外面的程序来和自己通讯的程序称为服务端程序。 比如上面的文件获取中,另外一个地方的程序就是服务端,我们从服务端获取文件过来。 [代码] [C/C++]代码 /******* 服务器程序 (server.c) ************/ #include <stdlib.h> #include <stdio.h> #include <errno.h> #include <string.h> #include <unistd.h> #include <netdb.h> #include <sys/socket.h> #include <netinet/in.h> #include <sys/types.h> #include <arpa/inet.h> int main(int argc, char *argv[]) { int sockfd,new_fd; struct sockaddr_in server_addr; struct sockaddr_in client_addr; int sin_size,portnumber; char hello[]="Hello! Are You Fine?\n"; if(argc!=2) { fprintf(stderr,"Usage:%s portnumber\a\n",argv[0]); exit(1); } if((portnumber=atoi(argv[1]))<0) { fprintf(stderr,"Usage:%s portnumber\a\n",argv[0]); exit(1); } /* 服务器端开始建立socket描述符 */ if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1) { fprintf(stderr,"Socket error:%s\n\a",strerror(errno)); exit(1); } /* 服务器端填充 sockaddr结构 */ bzero(&server;_addr,sizeof(struct sockaddr_in)); server_addr.sin_family=AF_INET; server_addr.sin_addr.s_addr=htonl(INADDR_ANY); server_addr.sin_port=htons(portnumber); /* 捆绑sockfd描述符 */ if(bind(sockfd,(struct sockaddr *)(&server;_addr),sizeof(struct sockaddr))==-1) { fprintf(stderr,"Bind error:%s\n\a",strerror(errno)); exit(1); } /* 监听sockfd描述符 */ if(listen(sockfd,5)==-1) { fprintf(stderr,"Listen error:%s\n\a",strerror(errno)); exit(1); } while(1) { /* 服务器阻塞,直到客户程序建立连接 */ sin_size=sizeof(struct sockaddr_in); if((new_fd=accept(sockfd,(struct sockaddr *)(&client;_addr),&sin;_size))==-1) { fprintf(stderr,"Accept error:%s\n\a",strerror(errno)); exit(1); } fprintf(stderr,"Server get connection from %s\n", inet_ntoa(client_addr.sin_addr)); if(write(new_fd,hello,strlen(hello))==-1) { fprintf(stderr,"Write Error:%s\n",strerror(errno)); exit(1); } /* 这个通讯已经结束 */ close(new_fd); /* 循环下一个 */ } close(sockfd); exit(0); } [代码] [C/C++]代码 /******* 客户端程序 client.c ************/ #include <stdlib.h> #include <stdio.h> #include <errno.h> #include <string.h> #include <unistd.h> #include <netdb.h> #include <sys/socket.h> #include <netinet/in.h> #include <sys/types.h> #include <arpa/inet.h> int main(int argc, char *argv[]) { int sockfd; char buffer[1024]; struct sockaddr_in server_addr; struct hostent *host; int portnumber,nbytes; if(argc!=3) { fprintf(stderr,"Usage:%s hostname portnumber\a\n",argv[0]); exit(1); } if((host=gethostbyname(argv[1]))==NULL) { fprintf(stderr,"Gethostname error\n"); exit(1); } if((portnumber=atoi(argv[2]))<0) { fprintf(stderr,"Usage:%s hostname portnumber\a\n",argv[0]); exit(1); } /* 客户程序开始建立 sockfd描述符 */ if((sockfd=socket(AF_INET,SOCK_STREAM,0))==-1) { fprintf(stderr,"Socket Error:%s\a\n",strerror(errno)); exit(1); } /* 客户程序填充服务端的资料 */ bzero(&server;_addr,sizeof(server_addr)); server_addr.sin_family=AF_INET; server_addr.sin_port=htons(portnumber); server_addr.sin_addr=*((struct in_addr *)host->h_addr); /* 客户程序发起连接请求 */ if(connect(sockfd,(struct sockaddr *)(&server;_addr),sizeof(struct sockaddr))==-1) { fprintf(stderr,"Connect Error:%s\a\n",strerror(errno)); exit(1); } /* 连接成功了 */ if((nbytes=read(sockfd,buffer,1024))==-1) { fprintf(stderr,"Read Error:%s\n",strerror(errno)); exit(1); } buffer[nbytes]='\0'; printf("I have received:%s\n",buffer); /* 结束通讯 */ close(sockfd); exit(0); } [代码] [C/C++]代码 ######### Makefile ########### all:server client server:server.c gcc $^ -o $@ client:client.c gcc $^ -o $@ 1 服务端命令./server 【1234】 , 其中123是端口可以设置为其他值。 2 客户端命令./clinet 【服务端的IP地址】【1234】,我的IP地址是192.168.1.105 端口要保持一致,即123 4。

2013-02-22

RCL测量仪程序

RCL 测量仪程序

2012-05-25

单片机LED矩阵滚动显示

单片机LED矩阵滚动显示字符

2012-02-03

LED矩阵滚动显示

LED矩阵滚动显示 单片机显示 单片机滚动显示

2012-03-18

multisim10_0注册机和安装过程及破解过程

multisim10_0太有意思了,但安装过程好复杂,也破解不了,然我千方百计花了大价钱终于从网上高昂的注册机,注册机下下来后还是不会我又找了安装和破解方法,并将它们有机的整合合订在一起,为后来者铺平道路

2012-01-06

DS1302时钟可调

DS1302时钟可调 DS1302 单片机

2012-03-18

天嵌和飞凌ARM开发板都能运行的u-boot

天嵌和飞凌ARM开发板都能运行的u-boot

2013-03-22

msp430f169的程序

宽频放大器程序5

2012-07-20

蹭网工具(有线)以及蹭网工具的破解

蹭网工具(有线)以及蹭网工具的破解

2012-05-14

msp430f169的放大器程序

msp430f169的放大器程序

2012-07-20

SPWM产生spwm波

产生spwm波产生

2012-05-25

计算小工具

计算小工具

2012-09-16

定时关机器

定时关机器

2012-01-05

u-boot-2010.09-fulinux.patch

飞凌s3c2440的patch包文件:u-boot-2010.09-fulinux.patch

2013-03-16

虚拟机vmware8

vmware8 虚拟机

2012-01-05

数据结构所有资源

数据结构所有资源

2012-01-05

大家版词典级大学英语四级47套历

大家版词典级大学英语四级47套历年真题大全[1989-2011年].

2012-01-05

按键选择DDS频率和显示程序

按键选择DDS频率和显示程序 DDS

2012-05-25

单片机计时器

单片机计时器

2012-02-12

幅值和频率计(封装版).

单片机测正弦波的幅值和频率

2012-02-29

kile注册机

我在使用kile4时,应为编译太大出现。。。Target not created;我很郁闷,在网上找,原来是没有注册,于是我在网上找kile注册机,不是版本太低不适用kile4,就是害人的,好长时间才找到这个令我心满意足的东西,。方法:在file菜单有一个license...的地方将生成的注册码草上去就行,好了你可以使用了

2011-11-17

XP主题下载

我在网上花了好长时间,遭到了一些比较好的XP主题,很漂亮,希望你们也能拥有漂亮的主题

2011-10-29

单片机正弦波测量

单片机 正弦波测量

2012-02-03

p2pover-v4

我在网上早了好长时间没有几个有效地,唯一发现这个好可以先别人的网速,很给力,对方电脑进没有察觉,特搞笑,好了上课去了

2011-11-16

信号与线性系统分析(第四版)解析

信号与线性系统分析(第四版)解析

2012-05-14

matlab注册机

matlab注册机

2012-05-25

Altium.Designer.Winter.09.SP3破解文件

Altium.Designer.Winter.09.SP3破解文件

2012-02-29

xp美化工具

xp美化工具

2012-01-05

暴力巡警删除软件

又一次中了毒,他只会播广告,站在那里一动也不动,360,金山也不行,这个可以,好东西,其他一些太烂了

2011-11-16

CC2500发射程序

CC2500发射程序 CC2500程序

2012-03-18

RCL测量仪程序26

RCL 测量仪程序

2012-05-25

数据库课件包括多套试卷

数据库课件包括多套试卷,课件很经典,试卷也多是我在网上搜的很全

2013-01-02

430的实例程序和下载工具

430 430的实例程序 430的下载工具

2012-05-25

数据结构迷宫升级版本

数据结构迷宫升级版本这是对网上一篇程序进行的升级,亮点是坐标表示更好,方向不再是数字而是英文方向单词更易于理解,希望对大家有帮助!

2012-01-05

fulinux的留言板

发表于 2020-01-02 最后回复 2020-10-10

阿里通信170的号码说是错误

发表于 2015-03-04 最后回复 2016-04-08

简历上的地区怎么改

发表于 2015-03-04 最后回复 2015-05-28

为什么更新简介时出现“昵称此昵称已经存在,无法更新!”

发表于 2015-03-04 最后回复 2015-05-28

andeq r14,r7, r0, lsl #20

发表于 2012-12-14 最后回复 2014-01-02

TACLS TWRPH0 TWRPH1的设置

发表于 2012-12-15 最后回复 2014-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除