
Linux 高性能服务器编程:高级I/O函数 5
pipe pipe用于创建一个管道,以实现进程间通信。 pipe函数的参数是一个包含两个int的数组指针。 该函数成功时返回0,并将一对打开的文件描述符值填入其参数指向的数组。 如果失败,返回-1并设置errno。 通过pipe创建的这两个文件描述符fd[0]和fd[1]分别构成...
pipe pipe用于创建一个管道,以实现进程间通信。 pipe函数的参数是一个包含两个int的数组指针。 该函数成功时返回0,并将一对打开的文件描述符值填入其参数指向的数组。 如果失败,返回-1并设置errno。 通过pipe创建的这两个文件描述符fd[0]和fd[1]分别构成...
基本语法 Shebang 注释 变量 变量名不能包含空格,等号两边也不能有空格 引用变量使用$符号 使用readonly命令将变量设置为只读 使用unset删除变量 字符串 单引号内的内容原样输出,变量不会被解析 双引号内的内容会解析变量和转义字符 获取字符串长度 字符串拼接 数...
卸载原先VMware的vmtools 安装open-vm-tools 安装pacman -S open-vm-tools 安装gtkmm和gtkmm3 (其实就是默认没有装这两个而已) pacman -S gtkmm pacman -S gtkmm3 重启 reboot
设置dump捕获 捕获dump 运行目标程序 产生dump 转储dump lldb调试dump 用lldb调试dump 运行程序 查看堆栈 寄存器 汇编 lldb调试正常程序 加载程序 在main函数打断点 运行程序 LLDB命令 list 显示代码 frame variable...
线程的互斥 在Posix Thread中定义了一套专门用于线程互斥的mutex函数。mutex是一种简单的加锁的方法来控制对共享资源的存取,这个互斥锁只有两种状态(上锁和解锁),可以把互斥锁看作某种意义上的全局变量。为什么需要加锁,就是因为多个线程共用进程的资源,要访问的是公共区...
内核空间和用户空间 对 32 位操作系统而言,它的寻址空间(虚拟地址空间,或叫线性地址空间)为 4G(2的32次方)。也就是说一个进程的最大地址空间为 4G。操作系统的核心是内核(kernel),它独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限。为...
TCP/IP协议族 TCP/IP是一个四层协议系统,自底而上分别是数据链路层、网络层、传输层和应用层。 数据链路层 实现了网卡接口的网络驱动程序,以处理数据在物理媒介上的传输。 常用协议 ARP RARP 网络层使用IP地址寻址一台机器,而数据链路层使用物理地址寻址一台机器,因此...
基础 NASM 开源、跨平台汇编器(支持 Windows、Linux、macOS) 特点 语法简洁严格(如内存访问必须用 [ ] 包裹) 无自动类型推断(需显式指定操作数大小,如 mov word [var], 1) 支持直接生成纯二进制文件(如引导扇区程序) 应用 操作系统开发...
划分 依据文件系统使用的频繁与否与是否允许使用者随意更动, 而将目录定义成为四种交互作用的形态 可分享的 可以分享给其他系统挂载使用的目录 不可分享的 机器上面运作的配置文件或程序相关的socket文件等 可变的 有些不会经常变动的数据 不可变的 经常改变的数据 可分享的 不可分...
信号 信号是进程在运行过程中,由自身产生或由进程外部发过来的消息(事件)。 信号是硬件中断的软件模拟(软中断)。 每个信号用一个整型常量宏表示,以SIG开头,比如SIGCHLD、SIGINT等,它们在系统头文件中定义,也可以通过在shell下键入* kill –l查看信号列表,或...
搜索当前标签