当前位置: 首页 > wzjs >正文

南京外贸网站建设系统关键词排名技巧

南京外贸网站建设系统,关键词排名技巧,郑州市政府网站的建设与发展,西安口碑较好的财务公司1.4共享队列 1.4.1共享内存 内存映射:避免数据的反复读写拷贝,提高了效率。 内存管理单元MMU:将物理内存与虚拟内存之间架起映射关系 1.创建共享内存 int shmget(key_t key,size_t size,int shmflg); 2.建立共享内存…

1.4共享队列

1.4.1共享内存

        内存映射:避免数据的反复读写拷贝,提高了效率。

        内存管理单元MMU:将物理内存与虚拟内存之间架起映射关系


1.创建共享内存                       

int shmget(key_t key,size_t size,int shmflg);

2.建立共享内存和用户空间的映射关系void *shmat(int shmid,const void *shmaddr,int shmflg);

3.写数据

4.读数据
5.解除映射关系int shmdt(const void *shmaddr)
6.删除共享内存int shmctl(int shmid,int cmd,struct shmid_ds *buf)

int shmget(key_t key,size_t size,int shmflg);

功能:根据key值创建共享内存

参数:

        key:IPC的key值

key_t ftok(const char *pathname,int proj_id);

功能:获取一个IPC的key值

参数:

        pathname:路径

        proj_id:项目ID

返回值:

成功:key

失败:-1

        size:共享内存大小(向上取整到页大小的整数倍)4096 PAGE_SIZE

        shmflg:对对象内存的操作  IPC_CREAT | 0664

返回值:

        成功:返回共享内存的ID

        失败:-1

void *shmat(int shmid,const void *shmaddr,int shmflg);
功能:建立内存映射

参数:

        shmid:共享内存的ID

        shmaddr:映射的用户首地址(NULL让操作系统自己去找,返回空间首地址)

        shmflg:!SHM_RDONLY(可读可写)

返回值:

        成功:映射的用户空间首地址

        失败:NULL

int shmdt(const void *shmaddr)
功能:解除用户映射关系,释放用户空间

参数:

        shmaddr:映射的用户首地址(NULL让操作系统自己去找,返回空间首地址)

返回值:

        成功:0

        失败:-1

int shmctl(int shmid,int cmd,struct shmid_ds *buf)
功能:控制共享内存

参数:

        shmid:共享内存的ID

       cmd:IPC_RMID:删除

        buf:NULL不需要使用

返回值:

        成功:0

        失败:-1

指令:ipcs -a查看共享内存 的信息

           ipcrm -s 删除信号量集

           ipcrm -m 删除共享内存

1.5消息队列

获取一个IPC通信的key值key_t ftok(const char *pathname,int proj_id);
创建消息队列int msgget(key_t key,int msgflg);
发送消息int msgsnd(int msqid,void  *msgp,size_t msgsz,int msgflg);  
接受消息ssize_t msgrcv(int msqid,void *msgp,size_t msgsz,long msgtyp,int msgflg);
删除消息队列int msgctl(int msqid,int cmd,struct msqid_ds *buf);
key_t ftok(const char *pathname,int proj_id);
功能:获取ipc的key值

参数:

       pathname:路径

       proj_id:项目ID

返回值:

        成功:key

        失败:-1

int msgget(key_t key,int msgflg);
功能:根据key值创建一个消息队列

参数:

       key:ipc的key值

      msgflg:标志位   IPC_CREAT |0664

返回值:

        成功:消息队列的id号

        失败:-1

int msgsnd(int msqid,void  *msgp,size_t msgsz,int msgflg);  
功能:向消息队列中发送消息

参数:

       msqid:消息队列的ID

        msgp:要发送的消息的结构体首地址

                struct msgbu{

                        long mtype;

                        char mtext[msgsz];

                };

        msgsz:消息体中正文内容大小

        msgflg:标志位:默认0

struct msgbuf msg;

msg.mtype =(大于0的值);

fgets(msg.mtext,sizeof(msg.mtext),stdin);

msgsnd(msgid,&msg,sizeof(msg.mtext),0);

返回值:

        成功:0

        失败:-1

ssize_t msgrcv(int msqid,void *msgp,size_t msgsz,long msgtyp,int msgflg);
功能:从消息队列接受消息

参数:

        msqid:消息队列的ID

        msgp:要存放接收的消息的结构体首地址

                struct msgbu{

                        long mtype;

                        char mtext[msgsz];

                };

        msgsz:接受消息体中正文内容大小

        msgtyp:消息的类型

        msgflg:标志位:默认0

返回值:

        成功:消息队列的id号

        失败:-1

1.6信号灯

不同主机进程间通信:

1.7网络套接字

文件描述符

客户端:

        socket():创建网络套接字

        sendto():发送数据包

        recvfrom():接受数据包

        close():关闭套接字

int socket(int domain,int type,int protocol)
功能:创建一个通信套接字

参数:

domain:ip层协议族

        AF_INET  IP4

        AF_INET6  IP6

type:传输层使用的协议类型

        SOCK_DGRAM UDP

        SOCK_STREAM TCP

protocol:

        0按照默认协议返回值

返回值:

成功:返回套接字

失败:-1

size_t  sendto(int sockfd,const void *buf,sizeof_t len,int flags,const struct sockaddr *dest_addr,socklen_t addrlen);
功能:向通信套接字发送数据

参数:

sockfd:套接字

buf:要发送的数据的首地址

len:发送的数据的大小

flags:默认方式 0

dest_addr:保存接受方地址信息的指针

.sin_port = htons(50000)//

.sin_addr.s_adde =inet_addr("ip地址")//将地址转为un int  inet_ntoa(int 转char)

addrlen:接收方地址变量的大小

返回值:

成功:实际发送的字节数

失败:-1

服务端:

        socket()

        bind():绑定服务器当前主机的身份(IP+PORT)

        recvfrom():接收

        sendto():发送

        close():关闭

bind(int sockfd,const struct sockaddr *addr,socklen_t addrlen)
功能:绑定当前主机的ip和进程的端口

参数:

 sockfd:套接字

addr:自己信息的地址

addrlen:地址信息的大小

返回值:

成功:0

失败:-1

 ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags,
                        struct sockaddr *src_addr, socklen_t *addrlen);
功能:从套接字接受数据

参数:

sockfd:套接字

buf:存储接收到的数据的位置的首地址

len:期待接收到的字节数

flags::默认方式:0
src_addr:送发地址信息的首地址

addrlen:送发方地址变量的大小

返回值:

成功:返回接收到的字节数

失败:-1

http://www.dtcms.com/wzjs/243234.html

相关文章:

  • 可以做彩票广告的网站百度关键词优化软件
  • 个人做理财网站日本域名注册
  • 佛山做外贸网站信息昆山网站制作公司
  • 郑州便民网黄冈seo
  • 福田商城网站建设哪家公司靠谱百度大搜
  • 哪个网站有免费空间浙江seo外包费用
  • 服装与服饰设计灰色seo关键词排名
  • 网站建设企业模板下载外贸网站建设推广公司
  • 企业网站做的公司网络的推广方式有哪些
  • 固安做网站的公司百度seo优化是做什么的
  • 国外网站服务器地址百度百科搜索入口
  • 怎么做情侣网站关键词分析工具网站
  • 专业网站建设哪里有可以推广的软件
  • 备案信息查询上海seo公司排名
  • 广撒网网站seo商城
  • 做一些网站犯法么女孩短期技能培训班
  • 顺德人做多上哪个网站济南seo优化
  • iapp用网站做的APP无法加载富阳网站seo价格
  • 贵州省建设厅网站造价工程信息优化大师最新版下载
  • 动态网站开发 项目代码seo的宗旨是什么
  • 网站页面打不开大连企业网站建站模板
  • 动态asp.net网站开发网推项目接单平台
  • 制作手机网站网页怎么搜索关键词
  • 如何设计一个完整的网站苏州网站seo服务
  • 建设信息门户网站的条件目前小说网站排名
  • 南京疫情最新政策南宁seo推广服务
  • wordpress种子在线播放搜索引擎优化seo专员招聘
  • 如果用局域网做网站网站链接分析工具
  • 网站建设行业衰落网页seo
  • 婚恋网站建设方案合肥seo整站优化