- 博客(10)
- 收藏
- 关注
原创 9,线程同步
09-线程同步 学习目标: 熟练掌握互斥量的使用 说出什么叫死锁以及解决方案 熟练掌握读写锁的使用 熟练掌握条件变量的使用 理解条件变量实现的生产消费者模型 理解信号量实现的生产消费者模型 1 互斥锁 1.1互斥锁的使用步骤 第1步:创建一把互斥锁 pthread_mutex_t mutex; 初始化互斥锁 pthread_mutex_init(&mutex);—相当于mutex=1 在代码中寻找共享资源(也称为临界区) pthread_mutex_lock(&mute
2021-09-05 18:54:30
183
原创 8,守护进程和线程
08-守护进程和线程 学习目标 说出守护进程的特点 独立完成守护进程的创建 独立实现多个线程的创建 独立实现线程的退出和资源回收 理解线程同步的思想 1 守护进程 1.1 守护进程介绍 Daemon(精灵)进程,是Linux中的后台服务进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。一般采用以d结尾的名字,如vsftpd Linux后台的一些系统服务进程,没有控制终端,不能直接和用户交互。不受用户登录、注销的影响,一直在运行着,他们都是守护进程。如:预读入缓输出机制的实现
2021-09-05 18:53:35
210
原创 7,信号使用
07 信号 1 学习目标 了解信号中的基本概念 熟练使用信号相关的函数 参考文档使用信号集操作相关函数 熟练使用信号捕捉函数signal 熟练使用信号捕捉函数sigaction 熟练掌握使用信号完成子进程的回收 信号介绍 信号的概念 信号是信息的载体,Linux/UNIX 环境下,古老、经典的通信方式, 现下依然是主要的通信手段。 信号在我们的生活中随处可见,例如: 古代战争中摔杯为号; 现代战争中的信号弹; 体育比赛中使用的信号枪… 信号的特点 简单 不能携带大量信息 满足某
2021-09-05 18:52:17
202
原创 6,进程间通信
进程间通信 1 学习目标 熟练使用 pipe 进行父子进程间通信 熟练使用 pipe 进行兄弟进程间通信 熟练使用 fifo 进行无血缘关系的进程间通信 使用 mmap 进行有血缘关系的进程间通信 使用 mmap 进行无血缘关系的进程间通信 2 进程间通信相关概念 2.1 什么是进程间通信 Linux 环境下,进程地址空间相互独立,每个进程各自有不同的用户地址空间。任 何一个进程的全局变量在另一个进程中都看不到,所以进程和进程之间不能相互访问, 要交换数据必须通过内核,在内核中开辟一块缓
2021-09-05 18:47:56
224
原创 5,进程控制
1 学习目标 了解进程相关的概念 掌握 fork/getpid/getppid 函数的使用 熟练掌握 ps/kill 命令的使用 熟练掌握 execl/execlp 函数的使用 说出什么是孤儿进程什么是僵尸进程 熟练掌握 wait 函数的使用 熟练掌握 waitpid 函数的使用 2 进程相关概念 2.1 程序和进程 程序,是指编译好的二进制文件,在磁盘上,占用磁盘空间, 是一个静态的概念. 进程,一个启动的程序, 进程占用的是系统资源,如:物理内存,CPU,终端等,是
2021-09-05 18:46:50
134
原创 4,文件和目录操作
掌握/open/read/write/lseek/close 函数的使用 掌握 stat/lstat 函数的使用 掌握目录遍历相关函数的使用 掌握 dup、dup2 函数的使用 掌握 fcntl 函数的使用 文件 IO 从本章开始学习各种 Linux 系统函数,这些函数的用法必须结合 Linux 内核的工作原理来理解, 因为系统函数正是内核提供给应用程序的接口, 而要理解内核的工作原理,必须熟练掌握 C 语言, 因为内核也是用 C 语言写的, 我们在描述内核工作原理时必然要用“指针”、“结构体”、“链表”.
2021-09-05 18:45:46
132
原创 3,makefile的使用
makefile-gdb-文件 IO 学习目标: 熟练使用规则编写简单的 makefile 文件 熟练使用 makefile 中的变量 熟练使用 makefile 中的函数 熟练掌握 gdb 相关调试命令的使用 了解概念: pcb 和文件描述符,虚拟地址空间 熟练掌握 Linux 系统 IO 函数的使用 1 makefile makefile 文件中定义了一系列的规则来指定, 哪些文件需要先编译, 哪些文件需要后编 译, 哪些文件需要重新编译, 甚至于进行更复杂的功能操作, 因为 makefile 就像一个
2021-09-05 18:44:06
145
原创 2,vim的使用快捷见的总结
学习目标 掌握 vim 命令模式下相关命令的使用 掌握从命令模式切换到编辑模式的相关命令 掌握 vim 末行模式下相关命令的使用 能够说出 gcc 的工作流程和掌握常见参数的使用 熟练掌握 Linux 下的静态库的制作和使用 熟练掌握 Linux 下的共享库的制作和使用 1 vim 1.1 vim 简单介绍 vi 是”visual interface”的简称, 它在 Linux 上的地位就仿佛 Windows 中的记事本一样. 它 可以执行编辑、删除、查找、替换、块操作等众多文本操作, 而且用户可以根据自
2021-09-05 18:41:38
439
原创 linux常用命令总结
Linux 常用基础命令 1 学习目标 说出 Linux 下的目录结构和常见目录的作用 熟练使用 Linux 下的相对路径和绝对路径 熟练使用 Linux 下常用文件和目录操作相关的命令 熟练使用修改用户权限、用户和用户组相关的命令 熟练使用文件的查找和检索相关的命令 熟练掌握 Ubuntu 下的软件安装和卸载 熟练使用压缩工具完成文件或目录的压缩解压缩 2 命令解析器 shell 就是命令解释器 命令解析器的作用:对用户输入到终端的命令进行解析,调用对应的执行程序。 用
2021-09-05 18:37:51
221
原创 4小时快速入门Vue
vue快速入门 学习vue快速入门之前需要大概的掌握HTML,CSS,JavaScript,AJAX这四方面的内容,所用开发工具为VSCode。vue快速入门一共分为4大部分,难度依次提升,分别是: 1,Vue基础 vue的基本介绍,以及如何跑起来一个最基本的Vue程序。 2,本地应用 vue的常见语法,以及基于本地数据实现三个精心设计的本地应用。 3,网络应用 学习一个常见的网络请求库,以及如何在Vue中结合它实现数据的交互,最后基于一个接口实现天气预报的应用。 4,综合应用 巩固所学知识,基于一个免费开
2020-11-20 08:48:44
519
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅