随笔分类 - Unix环境高级编程
摘要:之前在学习关于网络tcp和多线程的编程,学了知识以后不用一下总绝对心虚,于是就编写了一个基于tcp和多线程的多人聊天室。 具体的实现过程: 服务器端:绑定socket对象->设置监听数->等待连接->有客户端连接就新建一个线程,这个线程中,一旦就收到这个客户发送的消息,就广播的向其他客户端发送同样的
阅读全文
摘要:一.基本概念 进程中有哪些资源:代码段指令,只读段,全局段,静态数据,段,堆,栈,命令行参数,环境变量表,代码的执行者(线程)。 线程:在进程中,负责执行代码的一个单位,它是进程的一部分,一个进程至少要有一个线程(主线程),进程也可以有多个线程(创建) 线程中的代码段指令,只读段,全局段,静态数据,段,堆,命令行参数,环境变量表,文件描述符,信号处理函数,等资源共享 线程之间,栈空间是私...
阅读全文
摘要:一.计算机网络 1.什么是计算机网络:它是计算机技术和通信技术相结合的产物。 2.计算机网络的功能: a.数据通信 b.资源共享 c.提高系统的可靠性 d.分布式网络处理和负载均衡 3.计算机网络的组成 1.通信子网络:由网卡,线缆,集线器(存粹物理上的),中继器,交换机(),路由器(网络之间的交流) 2.资源子网络:网络中的计算机,打印机等一些可以提供的设备 3...
阅读全文
摘要:一.基本概念 进程间通信:进程之间交换数据的过程叫进程间通信。 进程间通信的方式:、 简单的进程间通信: 命令行:父进程通过exec函数创建子进程时可以附加一些数据 环境变量表:父进程通过exec函数创建子进程顺便传递一张环境变量表 信号:父子进程之间可以根据进程号相互发送信号,进程简单通信 文件:一个进程向文件中写入数据,另一个进程从文件中读取出来。...
阅读全文
摘要:一.基本的概念 1.中断 终止或者暂停当前正在执行的进程,转而去执行其他的任务。 硬中断:来自硬件设备的中断 软中断:来自其他程序的中断 2.信号 信号是一种软中断,可以把他看作是进程与进程,内核与进程通信的一种方式,它为程序的异步执行提供了技术支持。 3.常见的信号 SIGINI(2) 终端中断ctrl+c SIGQUIE(3) 终端退出信号ctrl+/ SIG...
阅读全文
摘要:一.基本概念 1.进程与程序 程序: 是存储在磁盘上的文件,它是包含要执行的机器指令和数据的静态实体 进程: 是一个正在运行的程序,一个程序可能包含多个进程(多任务,多进程),进程在操作系统中是一个执行特殊任务的一个单元。 2.进程的分类 交互进程:需要用户输入数据,也会显示一些结果给用户看 批处理进程:用来执行脚本的进程,例如Makefile. 守护进程:它是一种一直活跃...
阅读全文
摘要:系统调用: 定义:操作系统把它具有的功能列成一张表,然后给每一个功能取一个编号,当用户层需要调用某个系统功能时,只需要向内核发送对应的编号即可。 1.Linux和Unix系统的绝大多数功能都是通过系统调用形式提供的,不是通过函数形式调用,当需要执行这些功能的时候,可以向内核发送一个编号,那么内核就会把对应的系统调用执行。 2.系统调用是以标准C语言的形式提供的,但是它不属于C语言. 3.一般程...
阅读全文
摘要:一.错误处理 通过函数返回值表示错误 1.合法,不合法 数组的查找 练习:计算文件的大小 int file_size(const char *path); 2.NULL或其他地址(0xffffffff) 例子:malloc,fopen,dlopen 练习:实现memcpy void *mem_copy(void *dest,const void *src,size_...
阅读全文
摘要:一.UNIX操作系统 作者:丹尼斯.里奇,肯.汤普逊 版权:贝尔实验室 时间:1971 特点:多用户,多任务(多进程),多CPU(多种CPU架构),高安全,高可靠,高性能,高稳定 应用:构建大型服务器的商业服务器,移动终端的嵌入式手持设备。 三大派生版本: 各大公司对Unix进行的升级扩展: IBM
阅读全文

浙公网安备 33010602011771号