TianSong

189
获赞数
3
关注数
149
粉丝数
南京
菏泽学院 | 自动化
IP 属地江苏
2018-11-19 加入
浏览 45.3k

阿里山神木的种子在3000年前已经埋下,今天不过是看到当年注定的结果,为了未来的自己,今天就埋下一颗好种子吧

737 声望|达人
全站排名超越 98% 用户
c
379
c++
364
溢出
35
java
26
linux
23
个人动态
  • 发布了文章2024-09-24
    《Linux系统编程训练营》1-2_多核调度预备知识
    问题:内核对进程调度时发生了什么?进程调度的本质任务 / 进程切换即:上下文切换,内核对处理器上的进程进行切换“上下文” 指 : 寄存器上的值“上下文” 指 :将寄存器的值保存到内存中(进程被剥夺处理器,停止执行)将另一组寄存器的值从内存中加载到寄存器(调度...
  • 发布了文章2024-07-28
    《Linux系统编程训练营》1-1_初探 Linux 系统调度
    进程调度策略分析已知:父进程创建子进程后,父子进程同时运行(应用程序从可执行文件变成进程的过程)问题:如果计算机只有一个处理器,父子进程以什么方式执行(拿到了处理器的时间片资源,执行指令)?Linux 系统调度内核具有进程调度的能力,多个进程可同时运行微...
  • 赞了文章2024-05-28
    【Qt】15 用户界面与业务逻辑的分离
    功能模块之间需要进行解耦核心思想:强内聚,若耦合每个模块应该只实现单一的功能模块内部的子模块只为整体的单一功能而存在模块之间通过约定好的接口进行交互
  • 发布了文章2024-05-28
    《Linux系统编程训练营》0-15_信号处理设计模式
    问题:如何编写信号安全的应用程序???信号处理回避模式Linux 应用程序安全性讨论场景一:不需要处理信号应用程序实现单一功能,不需要关注信号如:数据处理程序,文件加密,科学计算程序,等场景单一的程序场景二:需要处理信号应用程序长时间运行,需要关注信号...
  • 发布了文章2024-05-21
    《Linux系统编程训练营》0-14_信号优先级与安全性
    信号优先级分析问题:对于同一个进程,如果存在两个不同的未决实时信号,那么先处理谁?信号优先级的概念信号的本质是一种软中断(中断有优先级,信号也有优先级)对于同一个未决信号,按照发送先后顺序送达进程对于不同的未决实时信号,信号值越小优先级越高不可靠...
  • 发布了文章2024-05-15
    《Linux系统编程训练营》0-13_信号可靠性剖析
    深度剖析信号可靠性问题:基于信号发送的进程间通讯方式可靠吗?信号查看 (kill -l) {代码...} 信号的分类不可靠信号 (传统信号,也是已经被证用赋予含义的信号)信号值在 [1, 31] 之间的所有信号可靠信号 (实时信号,未被证用且赋予含义,可自定义使用)信号值在 [...
  • 发布了文章2024-05-09
    《Linux系统编程训练营》0-12_信号发送与处理(下)
    信号处理三大特性问题:三种注册信号与处理函数的方法又什么区别?信号的 OneShot 特性System V 风格的 signal 函数,注册的信号处理是一次性的进程收到信号后,调用由 signal 注册的处理函数处理函数一旦执行,之后进程通过默认的方式处理后续相同信号如果想要重复...
  • 发布了文章2024-04-15
    《Linux系统编程训练营》0-11_信号发送与处理(上)
    信号的概念与分类问题:按下 Ctrl + C 后,命令行中的前台进程会被中止。为什么???什么是信号?信号是一种 “软件中断”, 用来处理异步事件内核发送信号到某个进程,通知进程事件的发生时间可能来自硬件,可能来自用户输入,可能来自除零错误信号是一种类型的进程间通...
  • 发布了文章2024-01-09
    《Linux系统编程训练营》0-10_守护进程深度分析
    1、 关闭标准输入输出和标准错误输出2、 将 stdin 关联到终端设备 : STDIN_FILENO -> 03、 将 stdout 关联到终端设备 : STDOUT_FILENO -> 14、 将 stderr 关联到终端设备 : STDERR_FILENO -> 2
  • 发布了文章2023-09-24
    《Linux系统编程训练营》0-9_Linux 进程层次分析
    详解 Linux 进程组每个进程都有一个进程组号 (PGID)进程组:一个或多个进程的集合(集合中的进程并不孤立)进程组中的进程通常存在父子关系,兄弟关系,或 功能相近进程组可方便进程管理(如:同时杀死多个进程,发送一个信号给多个进程)每个进程必定属于一个进程组...
  • 发布了文章2023-09-18
    《Linux系统编程训练营》0-8_Linux 终端与进程
    详解控制台与终端有趣的问题:Linux 的终端,控制台,TTY, PTY 究竟是什么?它们与进程有什么关系?历史回顾:控制台控制台是一个直接控制设备的面板(属于设备的一部分)计算机设备的控制台:按键 & 指示灯 (键盘 & 显示器)早期的电子计算机必然有一个控制台历史...
  • 发布了文章2023-09-17
    《Linux系统编程训练营》0-7_进程创建大盘点
    vfork 与进程创建进程创建回顾 {代码...} 问题:进程创建是否只能依赖于 fork() 和 execve() 函数?再论进程创建fork() 通过完整复制当前进程的方式创建新进程execve() 根据参数覆盖进程数据(一个不留)pid_t vfork(void);vfork() 用于创建子进程,然而不会复制父进...
  • 发布了文章2023-09-17
    《Linux系统编程训练营》0-6_深入 Linux 系统
    进程的数据输入输出问题:进程参数 和 环境变量 对于进程意味着什么?进程参数和环境变量的意义一般情况下,子进程的创建是为了解决某个子问题子进程解决问题需要父进程 "数据输入" (进程参数 & 环境变量)设计原则:子进程启动时必然用到的参数使用进程参数传...
  • 发布了文章2023-09-16
    《Linux系统编程训练营》0-5_环境变量编程
    初识环境变量问题:环境变量是什么?有什么意义? {代码...} main 函数(默认进程入口)int main(int argc, char *argv[], char *env[])argc 命令行参数个数 (启动参数)argv[] - 命令行参数数组 (启动参数)env[] - 环境变量数组(最后一个元素为 NULL)什么是环境变量环境变...
  • 发布了文章2023-09-11
    《Linux系统编程训练营》0-4_进程参数编程
    进程空间概要分析问题execve(...) 的参数分别是什么?有什么意义? {代码...} execve 的本质是系统调用而非函数!!main 函数(默认进程入口)int main(int argc, char *argv[]) {代码...} 注意:启动参数和环境变量 【拷贝】 于父进程进程空间概要进程参数存储分析m...
  • 发布了文章2023-09-07
    《Linux系统编程训练营》0-3_初试 Linux 进程
    问题: strace 输出中的 execve(...)究竟是什么?进程理论状态切换进程生命周期Linux进程基本概念进程是 Linux 任务的执行单元,也是 Linux 系统资源的分配单位每个 Linux 应用程序运行后由一个或多个进程一个 Linux 进程可以执行一个或多个程序Linux 进程有多种不同...
  • 发布了文章2023-09-06
    《Linux系统编程训练营》0-2_深入理解系统调用
    一般来说,大部分 CPU 至少具有两种工作方式高特权级 (Ring 0) : 可以访问任意的数据,包括外围设备,比如网卡、硬盘等(内核模式)
  • 回答了问题2023-08-23
    智能指针引用计数为什么不是0?
    对于问题 1 中的第三次输出,ptr 没有释放,因此还有 1 个引用计数占用,打印 1.对于问题 2 中的第三次输出,是 ptr 这个共享指针本身释放,而非资源释放,因此 ptr.use_count() 打印 0. 可以运行下面代码验证:
  • 发布了文章2023-06-29
    《Linux系统编程训练营》0-1_Linux系统概要
    再论计算机系统计算器系统由”躯体“和”灵魂“两部分组成”躯体“ : 构成计算机系统的电子设备(硬件)”灵魂“ :指挥 ”躯体“ 完成 ”动作“ 的指令序列 (软件)”躯体“ 核心 :中央处理器 (CPU)”灵魂“ 核心 :操作系统(OS) {代码...} 数据输入与输出是计算机系统不可获...
  • 发布了文章2023-06-10
    《Linux网络开发必学教程》31_文件服务器最终实现
    问题: # favicon.ico 简介 是什么?请求如何处理?favicon.ico 简介favicon.ico 是网页上的图标文件名称:默认名称位 favicon.ico尺寸:16x16、32x32、48x48、64x64、128x128颜色: 8 位、24 位 或 32 位一般说,在网页中可以通过 HTML 语句设置图标文件<link rel...