一.linux内核网络栈代码的准备知识 1. linux内核ipv4网络部分分层结构: BSD socket层: 这一部分处理BSD socket相关操作,每个socket在内核中以struct socket结构体现。这一部分的文件主要有: /net/socket.c /net/protocols. ...
分类:
系统相关 时间:
2021-01-30 12:21:40
阅读次数:
0
1、背景知识 1.1、Linux内核 Linux内核的主要组件如图1所示,有系统调用接口、进程管理、内存管理、虚拟文件系统、网络堆栈、设备驱动程序、硬件架构的相关代码。 其中进程管理主要控制系统进程对CPU的访问。当需要某个进程运行时,由进程调度器根据基于优先级的调度算法启动新的进程。Linux上单 ...
分类:
系统相关 时间:
2021-01-30 12:20:06
阅读次数:
0
调研要求 1.在深入理解Linux内核任务调度(中断处理、softirg、tasklet、wq、内核线程等)机制的基础上,分析梳理send和recv过程中TCP/IP协议栈相关的运行任务实体及相互协作的时序分析。 2.编译、部署、运行、测评、原理、源代码分析、跟踪调试等。 3.应该包括时序图。 1. ...
分类:
系统相关 时间:
2021-01-30 12:11:09
阅读次数:
0
Linux网络协议栈初始化 sock 初始化 socket 和文件系统都位于 VFS 下一层,对 socket 的操作都要经过VFS,下图为super_blocks和file_systems的链表结构图。 Linux 里面每个文件都有唯一的 inode ,inode 会大量使用,为了提高效率会对 i ...
分类:
系统相关 时间:
2021-01-30 12:08:14
阅读次数:
0
杂谈:其实原理并没有很难,本质就是hook Android的框架层中的api将我们想要的key和iv(也可以没有,就打个比方),但是目前的话,很多厂家已经不在直接调用java层的这些加密算法的api了, 很多都是使用自己实现的加密算法,要么就是放在so里面,要么就是java层自己实现一个差不多算法的 ...
分类:
移动开发 时间:
2021-01-30 12:06:25
阅读次数:
0
1、调研要求 1.在深入理解Linux内核任务调度(中断处理、softirg、tasklet、wq、内核线程等)机制的基础上,分析梳理send和recv过程中TCP/IP协议栈相关的运行任务实体及相互协作的时序分析。 2.编译、部署、运行、测评、原理、源代码分析、跟踪调试等。 3.应该包括时序图。 ...
分类:
系统相关 时间:
2021-01-30 11:53:41
阅读次数:
0
调研要求 在深入理解Linux内核任务调度(中断处理、softirg、tasklet、wq、内核线程等)机制的基础上,分析梳理send和recv过程中TCP/IP协议栈相关的运行任务实体及相互协作的时序分析。 编译、部署、运行、测评、原理、源代码分析、跟踪调试等 应该包括时序图 一、TCP/IP协议 ...
分类:
系统相关 时间:
2021-01-30 11:45:52
阅读次数:
0
TCP/IP协议栈在Linux内核中的运行时序分析 调研要求: 1、在深入理解Linux内核任务调度(中断处理、softirg、tasklet、wq、内核线程等)机制的基础上,分析梳理send和recv过程中TCP/IP协议栈相关的运行任务实体及相互协作的时序分析。 2、编译、部署、运行、测评、原理 ...
分类:
系统相关 时间:
2021-01-29 12:03:56
阅读次数:
0
1 前言&概述 这篇文章是基于此处文章的更新,更新了一些技术栈,更加贴近实际需要,以及修复了若干的错误。 这是一个前端Android+后端Java/Kotlin通过Servelt进行后台数据库(MySQL)交互的详细步骤以及源码实现,技术栈: Android基础 原生JDBC+原生Servlet T ...
分类:
移动开发 时间:
2021-01-28 11:42:11
阅读次数:
0
581. 最短无序连续子数组 给你一个整数数组 nums ,你需要找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。 请你找出符合题意的 最短 子数组,并输出它的长度。 示例 1: 输入:nums = [2,6,4,8,10,9,15] 输出:5 解释:你只需要对 ...
分类:
编程语言 时间:
2021-01-27 13:10:56
阅读次数:
0