
uc编程
uc语言
零一2035
为自己加油!!
展开
-
消息队列
1.消息队列 -队列是种数据结构,按次序存放元素,先入先出队列中的元素就是消息。2.消息队列的使用方式就是先把数据放入消息中,然后把消息放入队列中。队列的管理由内核完成。3.消息队列就是以内核管理的一个队列作为交互的媒介。比较常用的IPC。消息队列的使用步骤: 1.使用ftok()或共用的头文件提供一个key。 2.使用msgget(key,…转载 2016-05-11 14:06:36 · 278 阅读 · 0 评论 -
#pragma
#include #define VERSION 3#if(VERSION>3) #error "版本高" //不实用#elif(VERSION #warning "版本低"//不实用#endif#pragma GCC dependency "hello.c"#pragma GCC poison goto//禁止使用#pragma pack(1)//按1字转载 2015-08-03 13:32:58 · 309 阅读 · 0 评论 -
day14
今天内容:(1)基于UDP通信的模型(2)线程和多线程以及多线程的同步问题1.基于UDP通信的模型1.1概念TCP 传输控制协议,面向链接的协议UDP 用户数据报协议,非面向链接的协议1.2 区别(1)TCP是一种面向链接的协议,在通信的全程保持链接,优点:可以保证数据的完整性和安全性以及准确性,并且可以重发所有数据,缺点:服务器压力比较大,资源占用转载 2015-07-30 14:41:05 · 226 阅读 · 0 评论 -
day07
回顾: 一些文件相关函数: lseek() - 设置文件读写的位置(偏移量) dup() dup2() - 复制文件描述符,但不复制文件表 fcntl() - 提供一些额外的操作,包括:复制文件描述符/设置获取文件描述符的部分状态(不全)/文件锁 stat() fstat() - 获取文件在硬盘上各种数据(ls -il) access() - 判断是否转载 2015-07-30 14:35:52 · 258 阅读 · 0 评论 -
day10
XSI IPC之共享内存和消息队列(有固定的套路)共享内存/消息队列/信号量集 遵循相同的规范,因此在编程上有很多共性的东西。共同点:1.XSI IPC都是系统内核管理的,叫内核结构。2.XSI IPC都由外部的key ,类型是key_t,可以定位IPC结构。3.外部key的获取方式有三种:3.1 宏IPC_PRIVATE 做key,这种方式程序员基本上不用,因转载 2015-07-30 14:37:45 · 307 阅读 · 0 评论 -
c编译选项
Unix系统高级编程-UC(15)Unix系统函数为主-大量的Unix系统调用Unix系统的原理-内存如何管理,进程如何设计……培养大家的动手能力-能做一些有实际意义的软件(商业开发)建议:1.多动手,多写程序,为现在招工作更方便。2.有机会一定提升自己的学历,最好28,29岁左右开始升研。UC的主要内容:1.Unix/Linux系统(了解)2.转载 2015-07-30 14:28:12 · 463 阅读 · 0 评论 -
day05
文件和文件的读写函数(讲和练综合 重点)由于在Linux系统中,文件几乎可以代表一切,因此,操作文件的函数也可以操作其他的一些设备/东西。文件相关函数包括:文件读写函数/非读写函数标c文件读写函数:fopen() fread() fwrite() fclose()标c取文件大小的函数:fseek(SEE_END) 再调ftell()的返回值就是文件的大小标c的函数不能直转载 2015-07-30 14:34:25 · 268 阅读 · 0 评论 -
day15
复习:1.基于UDP通信的模型1.1 概念 TCP 传输控制协议,面向连接的协议优点:在通信全程保持连接,保证数据的安全性和完整性,可 以重发数据缺点:服务器端的压力比较大,资源占用率比较高 UDP 用户数据报协议,非面向连接的协议优点:不需要保持连接,服务器压力比较小,资源占用率比 较低缺点:不保证数据的安全性和完整性转载 2015-07-30 14:41:42 · 236 阅读 · 0 评论 -
day08
今天:进程结束 -fork() /退出进程/父进程等待子进程vfork() Unix/Linux 信号(信号处理)break退循环,return 退函数,exit()退进程程序员退出进程的方式:正常退出:1.在主函数中执行了return语句(特殊方式)2.exit()退进程(通用方式) 3 _exit()或_EXIT()函数退出进程(立转载 2015-07-30 14:35:11 · 268 阅读 · 0 评论 -
linux 下父子进程通过管道传输数据
#include #include #include #include #include #include #include int main(int argc,char* argv[]){ int status; int fd[2]; int pi=pipe(fd); char *bu原创 2017-05-12 15:48:03 · 1357 阅读 · 0 评论 -
linux 网络协议栈
wenhao_xie贡献值:0等級:L10发布0评论0顶发布链接发布图文 全部主题我关注的主题EmacsHadoopWindowsNginx敏捷开发网络基础Sublime TextEclipseStormTomcatVisual StudioToolwith计算机视觉数据科学算法Tens转载 2016-04-12 09:46:42 · 1349 阅读 · 0 评论 -
day03
环境变量的库函数:getenv() -按环境变量的名取得环境变量的值setenv() -新增环境变量或修改/不改变已存在的环境变量putenv() -新增环境变量或修改已存在环境变量unsetenv() -删除一个环境变量clearenv() -全部删除环境变量Unix/Linux的内存管理(UC的真正开始)内存分配和回收的相关函数及实现关系进程的内存空间划转载 2015-07-30 14:32:48 · 300 阅读 · 0 评论 -
day13
复习:1.使用信号量集进行进程间的通信1.1概念信号量是一个计数器,用于控制同时访问资源的进程数信号量集是信号量的集合,可以用于控制多种不同资源的访问问题1.2计数器的工作方式(1)初始化计数器最大值(2)如果有进程申请资源,那么计数器-1(3)当计数器为0时,停止进程对资源的申请,申请的进程进入阻塞状态(4)如果有进程释放资源,那么计数器+1(5)转载 2015-07-30 14:40:11 · 270 阅读 · 0 评论 -
day11
1.自我介绍 马如忠 maruzhong/ruzhong ma 小马哥/马哥 marz@tarena.com.cn2.综合项目2.1 项目名称 银行账户管理系统2.2 项目功能 开户 销户 存钱 取钱 转帐 查询余额 退出2.3 项目分析(1)采用C/S架构设计客户端: 给用户提供一个界面,让用户选择相应的功能,然后将用转载 2015-07-30 14:37:05 · 304 阅读 · 0 评论 -
linux 下信号量编程
这篇文章将讲述别一种进程间通信的机制——信号量。注意请不要把它与之前所说的信号混淆起来,信号与信号量是不同的两种事物。有关信号的更多内容,可以阅读我的另一篇文章:Linux进程间通信——使用信号。下面就进入信号量的讲解。一、什么是信号量为了防止出现因多个程序同时访问一个共享资源而引发的一系列问题,我们需要一种方法,它可以通过生成并使用令牌来授权,在任一时刻只能有一个执行转载 2017-10-23 14:13:46 · 351 阅读 · 0 评论 -
day09
回顾: 进程fork() 进程的退出 - 正常退出和非正常退出 正常退出: 主函数return exit() _Exit() 非正常退出: 信号结束 wait()和waitpid() - 父进程等待子进程的结束 进程的创建方式二: vfork() + execl() pid_t pid = vfork(); if(pid==0){转载 2015-07-30 14:37:05 · 249 阅读 · 0 评论 -
动态内存与静态内存的区别
1. 静态内存静态内存是指在程序开始运行时由编译器分配的内存,它的分配是在程序开始编译时完成的,不占用CPU资源。程序中的各种变量,在编译时系统已经为其分配了所需的内存空间,当该变量在作用域内使用完毕时,系统会自动释放所占用的内存空间。变量的分配与释放,都无须程序员自行考虑。eg:基本类型,数组 2. 动态内存用户无法确定空间转载 2016-04-12 10:13:01 · 1480 阅读 · 0 评论 -
day02
静态库和共享库(动态库)c程序员的错误处理环境变量和环境表一个操作系统是非常复杂的,根据非常多的系统函数,如何管理这些系统函数?比如:函数a()究竟来自与那个.o文件?需要把这些.o文件打包,打包成静态库(.a)或者共享库(.so)。静态库和共享库的区别静态库是代码的归档,在使用静态库时是采用的复制的代码的方式。共享库是可执行文件的组成部分,在使用共转载 2015-07-30 14:30:48 · 274 阅读 · 0 评论 -
day06
回顾: 文件读写及其相关函数: open() read() write() close() 今天: lseek() 其他的一些文件相关函数 lseek() off_t lseek(int fd,off_t offset,int whence) 功能:就是设置文件偏移量,确定读写的位置 参数:fd就是文件描述符 offset和转载 2015-07-30 14:35:02 · 203 阅读 · 0 评论 -
day12
今天的内容:(1)IPC-使用信号量集进行通行(2)网络编程 -网络常识,本地通信,网络通信1.信号量集1.1概念(1)什么叫信号量?信号量就是一个计数器,用于控制同时访问资源的进程数,解决有限资源的分配问题。 (2)什么叫信号量集信号量集 信号量的集合,也就是由多个信号量组成的数组,可以同时控制多种资源的分配问题1.2 计数器的工作方式转载 2015-07-30 14:39:03 · 270 阅读 · 0 评论 -
day04
六个函数malloc() free() sbrk() brk() mmap() munmap()文件读写函数(uc版)malloc()和free()malloc()分配的堆区内存,一次申请小块内存时,系统会映射33个内存页,如果申请大块内存(31个内存页以上),系统会映射比申请的稍多一点的内存页数。 malloc()申请内存时,除了数据占用的空间外,还需转载 2015-07-30 14:33:37 · 285 阅读 · 0 评论