linux环境入门笔记

0x00-开发环境:Ubuntu22.04

本文记录了 Ubuntu 22.04 开发环境的搭建过程,包括换源、安装 OpenSSH、配置静态 IP、Samba 服务以及安装 GCC/G++ 编译器等关键步骤。

0x01-单词统计

本文介绍了使用状态机算法实现单词统计的方法,并提供了相应的 C++ 代码示例,通过维护字符状态来准确计算文本中的单词数量。

0x02-C语言实现通讯录

本文探讨了 C 语言实现通讯录时的分层设计思路、如何修复 scanf 缓冲区溢出漏洞,以及内存初始化、缓冲区清空等编程细节。

0x03-多线程并发锁

本文通过一个多线程累加 count 的示例,分析了竞态条件产生的原因,并介绍了如何使用互斥锁(mutex)来解决临界资源访问的并发问题。

0x04-线程池

本文深入浅出地介绍了线程池的原理及其在处理高并发请求和异步 I/O 中的重要作用,并提供了一个基于 C 语言实现的线程池示例代码。

0x05-MySQL

本文记录了在 Ubuntu 22.04 系统上安装和配置 MySQL 数据库的全过程,包括安全设置、密码修改以及远程登录配置等实用步骤。

0x07-HTTP_client

本文详细介绍了 Linux 网络编程中常用的地址结构体(如 sockaddr_in, addrinfo 等)及其用法,并展示了创建 TCP 客户端连接的基本步骤。

0x08-TCP_server百万并发

本文通过一个 TCP 服务器的实现示例,探讨了处理百万并发连接的技术要点,重点分析了 epoll I/O 多路复用模型及其在高性能网络服务器中的应用。