Linux

Linux 高性能服务器编程:高性能服务器架构一

Linux 高性能服务器编程:高性能服务器架构一 8

bingliaolong 4年前 6 0

服务器模型 C/S模型 TCP/IP协议在设计和实现上并没有客户端和服务器的概念,在通信过程中所有机器都是对等的。 C/S模型的逻辑很简单。 服务器启动后,首先创建一个或多个监听socket,并调用bind函数将其绑定到服务器感兴趣的端口上。 然后调用listen函数等待客户连接...

Linux学习:gdb、debugging

Linux学习:gdb、debugging

bingliaolong 2周前 5 0

概述 Windows调试流程 Linux/GDB 的对应流程: 区别 Windows 把调试信息放在独立的 .pdb 文件里,需要你手动指定路径 Linux 把调试信息(DWARF)直接嵌入 .o / 可执行文件 / .so 中(编译时加 -g 选项),所以大部分情况下你不需要额...

Linux下调试dump记录

Linux下调试dump记录

bingliaolong 2年前 14 0

设置dump捕获 捕获dump 运行目标程序 产生dump 转储dump lldb调试dump 用lldb调试dump 运行程序 查看堆栈 寄存器 汇编 lldb调试正常程序 加载程序 在main函数打断点 运行程序 LLDB命令 list 显示代码 frame variable...

Linux 线程概述&&创建

Linux 线程概述&&创建

bingliaolong 6年前 3 0

线程概述 进程是系统中程序执行和资源分配的基本单位。每个进程有自己的数据段、代码段和堆栈段。这就造成进程在进行切换等操作时都需要有比较负责的上下文切换等动作。为了进一步减少处理器的空转时间支持多处理器和减少上下文切换开销,也就出现了线程。 线程通常叫做轻量级进程。线程是在共享内存...

Linux 线程等待&&取消&&终止

Linux 线程等待&&取消&&终止

bingliaolong 6年前 7 0

等待线程退出 线程从入口点函数自然返回,或者主动调用pthread_exit()函数,都可以让线程正常终止 线程从入口点函数自然返回时,函数返回值可以被其它线程用pthread_join函数获取 该函数是一个阻塞函数,一直等到参数th指定的线程返回;与多进程中的wait或wait...

Linux调试工具记录

Linux调试工具记录

bingliaolong 2年前 9 0

strace 一个强大的命令行工具,用于在Linux系统上跟踪系统调用和信号 主要用于调试和诊断程序,在了解程序如何与操作系统交互方面非常有用 用法 跟踪系统调用 跟踪现有进程 筛选特定系统调用 写入到文件 跟踪子进程 高级用法 使用-c选项可以查看关于系统调用的统计信息,如次数...

Linux 基于文件指针的文件操作(缓冲)

Linux 基于文件指针的文件操作(缓冲)

bingliaolong 6年前 7 0

文件的创建,打开与关闭 linux中对目录和设备的操作都是文件操作,文件分为普通文件,目录文件,链接文件和设备文件。 fopen以mode的方式打开或创建文件,如果成功,将返回一个文件指针,失败则返回NULL fopen创建的文件的访问权限将以0666与当前的umask结合来确定...

Linux 高性能服务器编程:I/O复用一

Linux 高性能服务器编程:I/O复用一 2

bingliaolong 4年前 12 0

概述 I/O复用使得程序能同时监听多个文件描述符,这对提高程序的性能很重要。 通常,网络程序在下列情况下需要使用I/O复用技术: 客户端程序要同时处理多个socket。 客户端程序要同时处理用户输入和网络连接。 TCP服务器要同时处理监听socket和连接socket。 服务器要...

Linux 高性能服务器编程:高性能服务器架构二

Linux 高性能服务器编程:高性能服务器架构二 7

bingliaolong 4年前 9 0

两种高效的并发模式 并发编程的目的是让程序“同时”执行多个任务。 如果程序是计算密集型的,并发编程并没有优势,反而由于任务的切换使效率降低。 但如果程序是I/O密集型的,比如经常读写文件,访问数据库等,则情况就不同了。 由于I/O操作的速度远没有CPU计算速度快,所以让程序阻塞I...

扫一扫二维码分享