E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Linux内核源码分析
Linux内核
之内存2: 内存的动态申请、释放的原理和细节
1.slab、kmalloc/kfree、/proc/slabinfo和slabtopBuddy是直面物理内存的,所有的内存分配,最终都通过Buddy的get_free_page/page_alloc分配;Buddy的粒度太大,最小分配一页(4k);而我们常常需要分配小内存;所以Linux引入一个二级分配的概念:1.内核分配内存,调用kmalloc()/kfree()–调用slab–再调用Budd
科学边界
·
2024-01-29 21:53
Kernel
#
内存管理
slab
malloc
惰性分配
内核
内存管理
宋宝华:slab在内核内存管理和用户态Memcached的双重存在
因为buddy作为
Linux内核
最底层的内存管理器,它分配1页,2页,4页,2^n页,但是作为内核的堆用户本身,经常只是调用kmalloc()申请一个小内存,或者调用kmem_cache_alloc()
宋宝华
·
2024-01-29 21:23
内核
java
linux
python
大数据
linux kernel 内存踩踏之KASAN(一)
一、背景
linux内核
出现内存类问题时,我们常用的调试工具就是kasan,kasan有三种模式:1.GenericKASAN(这个就是我们最常用的,1debugbyteindicate8bytesusestate
无人知晓万事万物
·
2024-01-29 20:14
Linux调试技术
linux
kernel内存踩踏
kasan
linux内核
调试+qemu+gdb+vscode, 环境搭建
一,linux调试环境准备1.1.运行环境:x86_64,Ubuntu-20.04.1,qemu1.2.下载源码,安装必要的依赖;源码包linux,busybox都放在/home目录:$sudoaptupdate$sudoaptinstallbuild-essential$sudoaptinstallgcc-multilib$sudoaptinstallgit$gitclonehttps://mi
weixin_43023282
·
2024-01-29 20:44
linux
运维
服务器
VSCode+GDB+QEMU图形化调试
Linux内核
VSCode+GDB+QEMU图形化调试
Linux内核
文章目录VSCode+GDB+QEMU图形化调试
Linux内核
概述环境准备VSCode配置GDB调试助记概述在学习嵌入式Linux系统时,需要对LinuxKernel
Jialin29-Zhu
·
2024-01-29 20:13
vscode
linux
ide
qemu + vscode图形化调试linux kernel
需要对着源码设置),terminal显示代码不方便,不利于我们学习;另外在gdb下p命令显示结构体内容时,看起来也是很别扭,可以利用vscode+gdb-multiarch调试qemu仿真的arm64
linux
无人知晓万事万物
·
2024-01-29 20:43
qemu玩转linux
vscode
linux
ide
qemu
NFS远程共享存储
NFS:NetworkFileSystem网络文件系统,NFS和其他文件系统一样,是在
Linux内核
中实现的,因此NFS很难做到与Windows兼容。
既然选择了远方,我便风雨兼程
·
2024-01-29 19:53
Linux
linux
【Docker】docker Overlay2 文件系统原理
后来在
Linux内核
4.0版本中进行了改进,称为overlay2。
margu_168
·
2024-01-29 17:05
docker
docker
容器
运维
Chromium
源码分析
:ContentShell启动流程
http://mogoweb.net/archives/417ContentShell是基于ContentAPI的一个简单的浏览器外壳,下面我将分析chromiumforandroid中的ContentShell程序的启动流程。由于android程序的特殊性(一部分Java代码,一部分c++代码),所以看似简单的启动流程,在android版本的ContentShell却七拐八弯的,难以理清脉络。在
dzhjsofo
·
2024-01-29 15:28
chromium
AppTask.moveToFront()
源码分析
ActivityManager.AppTask.moveToFront()执行后,导致其他AppTask退到了后台,点击返回直接回到了桌面(HomeScreen),没有回到上一个AppTask。下面分析一下源码看看为什么其他AppTask退到了后台,如何解决该问题。@SystemService(Context.ACTIVITY_SERVICE)publicclassActivityManager{
ShawnRacine
·
2024-01-29 12:58
android
java
开发语言
【Spring】Spring&WEB整合原理及
源码分析
原文:https://blog.csdn.net/reliveit/article/details/47256559
laosijikaichele
·
2024-01-29 12:18
STL
源码分析
:shared_ptr 和 weak_ptr
1.shared_ptr虽然早就对shared_ptr的原理烂熟于心,手撕也没少做过,但有时候总感觉对其还是很陌生;在看《Linux多线程服务端编程》时,作者提到一个析构动作在创建时被捕获又彻底把我搞懵了,终于下定决心要研究下GCC9.4中tr1下的源码;1.1基本架构shared_ptrsp(newTp1),之后假设Tp和Tp1是相容的(可简单认为Tp是Tp1的基类),并且假设Tp1位于堆区;下
十一很迷茫
·
2024-01-29 12:01
C++
c++
linux
stl
【C语言】
linux内核
ipoib模块 - ipoib_netdev_ops_pf结构
一、ipoib_netdev_ops_pf结构staticconststructnet_device_opsipoib_netdev_ops_pf={.ndo_init=ipoib_ndo_init,.ndo_uninit=ipoib_ndo_uninit,.ndo_open=ipoib_open,.ndo_stop=ipoib_stop,.ndo_change_mtu=ipoib_change_
尘中928
·
2024-01-29 11:11
编程
#
C语言
网络
linux
c语言
网络
Linux信号机制分析和信号处理函数
【摘要】本文分析了
Linux内核
对于信号的实现机制和应用层的相关处理。首先介绍了软中断信号的本质及信号的两种不同分类方法尤其是不可靠信号的原理。
一厘阳光
·
2024-01-29 08:01
Linux
linux
信号
signal
sigaction
kill
【嵌入式移植】5、U-Boot
源码分析
2—make nanopi_neo2_defconfig
U-Boot
源码分析
2—makenanopi_neo2_defconfig1概述2nanopi_neo2_defconfig3编译过程分析3.1编译目标3.2scripts_basic3.2.1prefixsrc
Keep_moving_tzw
·
2024-01-29 08:55
【嵌入式移植】
嵌入式
U-Boot
defconfig
记录 | ubuntu查看系统信息如系统版本、cpu信息
要查看ubuntu系统的一些基本信息,可以使用以下命令:查看ubuntu版本:lsb_release-a查看
Linux内核
版本:uname-r查看CPU信息:lscpu查看内存信息:free-h查看硬盘使用情况
极智视界
·
2024-01-29 07:22
踩坑记录
ubuntu
系统查看
从
源码分析
如何优雅的使用 Kafka 生产者
从
源码分析
如何优雅的使用Kafka生产者前言在上文设计一个百万级的消息推送系统中提到消息流转采用的是Kafka作为中间件。其中有朋友咨询在大量消息的情况下Kakfa是如何保证消息的高效及一致性呢?
陈晓阳_矿洞程序员
·
2024-01-29 07:01
flink
源码分析
- 简单解析命令行参数
flink版本:flink-1.11.2提取主类代码位置:org.apache.flink.api.java.utils.MultipleParameterTool#fromArgs代码逻辑比较简单,此处不再赘述,在此记录方便后续使用完整代码:/**LicensedtotheApacheSoftwareFoundation(ASF)underone*ormorecontributorlicense
zxfBdd
·
2024-01-29 06:04
大数据
大数据
java
flink
源码分析
- jar包中提取主类和第三方依赖
flink版本:flink-1.11.2提取主类代码位置:org.apache.flink.client.program.PackagedProgram#getEntryPointClassNameFromJar提取第三方依赖代码位置:org.apache.flink.client.program.PackagedProgram#getJobJarAndDependencies代码逻辑比较简单,此
zxfBdd
·
2024-01-29 06:03
大数据
flink
jar
大数据
ArrayBlockingQueue
源码分析
ArrayBlockingQueue实际实现是一个环形数组,并且保护了线程安全,那么是如何保证线程安全的?环形数组怎么实现的?先看下里面的几个参数是干嘛的/**Thequeueditems*/数据,存数据的finalObject[]items;/**itemsindexfornexttake,poll,peekorremove*/取出的引索inttakeIndex;/**itemsindexfor
一只刘小彤!
·
2024-01-29 06:21
java
开发语言
Android 系统启动流程
那么接下来开始分析Android的启动流程还是一步一图先画一张流程图描述个大概这里有个小知识点,线程和进程在
Linux内核
空间是一样的,只是因为共享内存,所以才有线程和进程区分,连调用方法都一样,只是传进去的参数线程会
一只刘小彤!
·
2024-01-29 06:50
android
Python进阶(2) | py-sort源码浅析,TDD方式实现排序算法
Python进阶(2)|排序算法的单元测试文章目录Python进阶(2)|排序算法的单元测试1.目的2.任务来源3.py-sorting介绍4.测试代码浅析4.1bubble_sort_test.py
源码分析
baiyu33
·
2024-01-29 05:12
python
tdd
排序算法
C&C++内存管理【非常详细,对新手友好】
语言中动态内存管理方式三、C++中动态内存管理方式1.new/delete操作内置类型2.new/delete操作自定义类型四、operatornew和operatordelete函数1.汇编查看编译器底层调用2.透过
源码分析
两个全局函数五
争不过朝夕,又念着往昔
·
2024-01-29 05:01
C++
c语言
c++
面试官让你讲讲
Linux内核
的竞争与并发,你该如何回答?
@[TOC]内核中的并发和竞争简介 在早期的
Linux内核
中,并发的来源相对较少。
3561cc5dc1b0
·
2024-01-29 04:15
探索Android开源框架 - 8. Gson使用及源码解析
Gson是我们经常用来在Java对象和JSON数据之间进行映射的库,今天我们就来分别讲一讲其使用和
源码分析
使用详解1.基本的解析与生成Gson提供了fromJson()和toJson()两个直接用于解析和生成的方法
今阳说
·
2024-01-29 03:37
docker容器网络及其配置
网络单节点容器间通信不同节点容器间通信Docker网络驱动选择Docker网络驱动的基本原则docker容器网络docker的4种网络模式bridge模式container模式host模式none模式
Linux
MD_雨落心尘.wyn
·
2024-01-29 01:02
docker
ubuntu 安装Docker
为什么要使用dockerdocker是一种虚拟化技术,它在一个基础的
linux内核
的上,使用软件级别的隔离技术,虚拟化出独立的linux环境,这个linux环境相对于宿主机是独立的。
liuyizhifeng
·
2024-01-29 01:59
docker
linux
ubuntu
TCP半链接和全链接队列实验(上)
在TCP三次握手的时候,
Linux内核
会维护两个队列,分别是:半连接队列,也称SYN队列;全连接队列,也称accept队列;服务端收到客户端发起的SYN请求后,内核会把该连接存储到半连接队列,并向客户端响应
还能救一下嘻嘻
·
2024-01-29 00:37
tcp/ip
网络
服务器
网络协议
linux
android cpu调度策略_android进程、线程调度简介
linux的调度策略android基于
linux内核
,android系
weixin_39640417
·
2024-01-28 23:37
android
cpu调度策略
打实时补丁linux系统编译,ubuntu打实时内核补丁(RT-PREEMPT kernel)
下面是编译RT
Linux内核
的流程,以内核3.18.59为例。
成长中的青青
·
2024-01-28 18:37
打实时补丁linux系统编译
linux内核
打xenomai补丁,编译kernel+xenomai+machinekit
编译kernel+xenomai,主要参考https://code.google.com/p/picnc项目中的wiki页面。编译machinekit,主要参考http://www.machinekit.io/docs/building-from-source/。解决编译依赖要费些周折,需要再添加两个源,下载几个包。搭建qemuchroot环境安装必要的包sudoapt-getinstallqem
晓晓涵
·
2024-01-28 18:37
linux打实时补丁以及实时性能测试
当然这一局限性已经有所改善,目前linux社区已经增加了众多版本的实时补丁,只要给
linux内核
打上实时补丁,其实时性会得到大幅度提升。在此,我们就讲讲如何给
linux内核
打补丁以及如何测试linu
嵌入式小胖
·
2024-01-28 18:36
linux系统移植
linux
实时补丁
cyclictest
实时性测试
linux打补丁步骤
Linux编译实时内核和打补丁
目录1.
Linux内核
2.实时内核3.编译实时内核3.1准备3.2获取内核源码3.3编译3.4设置GRUB确保启动到实时内核4.给内核打补丁5.安装新的内核1.
Linux内核
https://github.com
boss-dog
·
2024-01-28 18:36
Xubuntu
Linux
linux
实时内核
补丁
linux系统下poll和epoll内核源代码剖析
我们通过内核
源码分析
来看看到底是为什么。
linux大本营
·
2024-01-28 16:36
2018-03-14鲁大师
源码分析
flow
flow接收多个函数作为参数,将第N个函数的返回值作为参数传给第N+1个函数。functionflow(funcs){constlength=funcs?funcs.length:0letindex=lengthwhile(index--){if(typeoffuncs[index]!='function'){thrownewTypeError('Expectedafunction')}}retu
NOTEBOOK2
·
2024-01-28 16:21
Linux系统与windows系统的优缺点
3嵌入式领域(手机、机顶盒、车载电脑……)4集群计算机等
Linux内核
:CPU和进程管理、文件管理、内存管
简单编程王子
·
2024-01-28 16:12
操作系统
windows
linux
Android 系统启动--03:init进程
本文转载自:Android10.0系统启动之init进程本文基于Android10.0
源码分析
(kernel/msm-4.19)1.概述 init进程是linux系统中用户空间的第一个进程,进程号为1
Darcy1024
·
2024-01-28 15:59
Dubbo 3.x
源码分析
系列 - 基础篇
本篇章主要是描述工程的原始信息,后面的大多数文章里都会进行引用,作为一个公共部分把。源码地址:https://github.com/woaijiadanoo/dubbo_3.git核心框架版本:1、Dubbo版本:3.0.12、Springboot版本:2.5.03、zookeeper版本:3.7.0Dubbo基本配置对外提供的服务packagecom.jiangzh.course.dubbo.s
蒋征
·
2024-01-28 14:51
Linux多线程——线程控制
本章Gitee仓库:线程控制文章目录0.前言1.线程创建2.线程等待3.线程终止4.线程取消5.线程ID6.线程局存储7.线程分离0.前言由于
Linux内核
当中,没有很明确的线程概念,它只有轻量级进程的概念
请揣满RMB
·
2024-01-28 14:26
Linux
原创
linux
运维
服务器
【Go】锁相关 ③
文章目录Mutex锁mutex
源码分析
LockUnLockmutex两种运行模式mutexnormal正常模式自旋mutexstarvation饥饿模式锁的底层实现类型RWMutexRWMutex实现其他共享内存线程安全的方式思考如何设计一个并发更高的锁
curd_boy
·
2024-01-28 12:51
#
Go基础知识
golang
领略Quartz源码架构之美——源码实弹之Job
本章阅读收获:可了解Quartz框架中的Job部分源码源码起航人之初,专门找软柿子捏,所以我就又忍不住先拿Job进行开刀,作为一个敲门砖进行
源码分析
。Quartz中的Job是什么?
向光奔跑_
·
2024-01-28 12:39
Redis数据类型及底层实现
1.3.1.2.3数据模型解析(重点)1.3.1.2.4redisObjec1.3.1.2.5SDS1.3.1.3String1.3.1.3.1底层分析1.3.1.3.1.1数据结构1.3.1.3.1.2
源码分析
野心与梦
·
2024-01-28 11:16
redis专栏
redis
数据库
缓存
2023-2024-1 20232831《
Linux内核
原理与分析》第十一周作业
文章目录一、第十二章Linux系统安全相关技术12.1操作系统安全概述12.1.1信息安全的设计原则12.1.2操作系统安全的设计目标12.2Linux系统的安全机制12.2.1Linux系统的用户账号12.2.2Linux文件系统的权限12.2.3Linux的日志文件12.2.4Linux纵深防御体系12.3Linux系统的访问控制12.3.1Linux系统访问控制概述12.3.2LinuxCa
20232831袁思承
·
2024-01-28 09:20
linux
运维
服务器
系统安全
2023-2024-1 20232825《
Linux内核
原理与分析》第十一周作业
目录一、操作系统安全(一)身份验证和访问控制身份验证(Authentication):访问控制(AccessControl):(二)授权和权限管理授权和权限管理的主要概念:(三)防火墙和网络安全防火墙(Firewall):网络安全:二、Linux系统的安全机制(一)Linux用户和文件系统权限Linux用户:文件系统权限:(二)Linux的日志文件(三)Linux的纵深防御体系三、Linux系统的
a674871089
·
2024-01-28 09:18
linux
运维
服务器
【五一创作】Linux---I2C应用编程
硬件框架:(3)I2C软件框架(4)I2C数据格式二、SMBus协议三、I2C系统重要的结构体四、访问I2C设备(AP3216C)(1)使用SMBus协议:(2)使用I2C协议:(3)I2C-Tools
源码分析
希希雾里
·
2024-01-28 07:55
嵌入式Linux驱动
驱动开发
嵌入式硬件
Gin-session中Redis-based session的原理
Ginsession库本文讨论的Gin相关的session库为:https://github.com/gin-contrib/sessionsRedis-basedsession
源码分析
gin-contrib
布丁老厮
·
2024-01-28 07:54
Gin
Session
Redis
go
session
玩转docker(1)-基础知识
Docker使用Go语言进行开发实现,基于
Linux内核
的cgroup,namespace等技术,对进程进行封装隔离,由于隔离的进程独立于宿主和其他隔离的进程因此被称为容器。
redher
·
2024-01-28 06:21
【数据结构】源码角度剖析PriorityQueue
PriorityQueue构造方法
源码分析
PriorityQueue的属性构造方法JDK1.8传入不可比较的对象JDK17传入不可比较的对象传入带有Collection接口的对象Offer方法分析PriorityQueue
不应该热爱
·
2024-01-28 01:51
数据结构
算法
PriorityQueue
从壹开始微服务 [ DDD ] 之十一 ║ 基于
源码分析
,命令分发的过程(二)
缘起哈喽小伙伴周三好,老张又来啦,DDD领域驱动设计的第二个D也快说完了,下一个系列我也在考虑之中,是Id4还是Dockers还没有想好,甚至昨天我还想,下一步是不是可以写一个简单的Angular入门教程,本来是想来个前后端分离的教学视频的,简单试了试,发现自己的声音不好听,真心不好听那种,就作罢了,我看博客园有一个大神在Bilibili上有一个视频,具体地址忘了,有需要的留言,我找找。不过最近年
SAYLINING
·
2024-01-28 01:10
SpringBoot 源码解析5:ConfigurationClassPostProcessor整体流程和@ComponentScan
源码分析
SpringBoot源码解析5:ConfigurationClassPostProcessor整体流程和@ComponentScan
源码分析
1.知道以下几点,读ConfigurationClassPostProcessor
hao9e
·
2024-01-28 00:51
spring
boot
java
后端
上一页
12
13
14
15
16
17
18
19
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他