![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
文章平均质量分 67
宇华
皓月满轮玉宇无尘千顷碧 紫箫一曲银河有焰万里春 上善若水
展开
-
android6.0 init进程main之prop
android6.0 init进程main之prop 对应代码 android6.0_r72,kernel 对应 linux3.18前言init 进程系统属性初始化,属性导入 和 属性服务 :property_load_boot_defaults();start_property_service();涉及文件// system/core/init/property_service.cpp// system/core/init/init.cpp/system/core/init/I原创 2021-10-11 13:38:00 · 489 阅读 · 0 评论 -
android6.0 init进程main之epoll
android6.0 init进程main之epoll 对应代码android6.0_r72,kernel对应linux3.18前言init 进程监听 初始化,epoll 及 signal_handler_init涉及文件/system/core/init/Init.cpp/system/core/init/signal_handler.cppinit 进程 epoll 监听功能init进程 epoll 整体代码结构如下:// /system/core/init/Init.cpp原创 2021-08-24 21:02:20 · 239 阅读 · 0 评论 -
android6.0 init进程main之selinux_initialize
android6.0 init进程main之selinux_initialize 对应代码android6.0_r72,kernel对应linux3.18前言selinux 的初始化 selinux_initialize涉及文件/system/core/init/Init.cpp/external/libselinux/callbacks.c/system/core/init/log.cpp/system/core/init/Android.mk/external/libseli原创 2021-08-23 17:36:43 · 375 阅读 · 0 评论 -
android6.0 启动流程总览
android6.0 启动流程总览Android系统的启动流程总体上是先启动BootLoader,再启动kernel,最后启动android。Android启动总览图BootLoader层BootLoader层启动有以下任务:当电源供电是将自身加在到RAM中,执行相应的初始化任务;加载linux内核,并引导linux内核启动。kernel层BootLoader 启动 kernel 的 swapper进程,进程ID为0,是内核的第一个进程,此进程初始化系统的各个硬件及kernel系统管理模块原创 2021-07-25 16:51:33 · 194 阅读 · 1 评论 -
android6.0 init进程启动前传
未写文章列表android6.0 init进程启动前世前言linux内核启动 head.Sstart_kerneljava为什么能实现单一原则插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入android6.0 init进程启动前世对应代码android6.0_r72,kernel对应l原创 2021-07-25 15:36:13 · 138 阅读 · 0 评论 -
do_fork函数
do_fork函数在内核中创建并执行新的程序的各种系统调用最终都是调用了do_fork来实现进程的创建。asmlinkage int sys_fork(unsigned long r4, unsigned long r5, unsigned long r6, unsigned long r7, struct pt_regs __regs){#ifdef CONFIG_MMU struct pt_regs *regs = RELOC_HIDE(&原创 2021-07-25 15:19:53 · 800 阅读 · 0 评论 -
start_kernel初始化
start_kernel 函数主要初始化 linux 系统各个功能子系统,然后进入 kernel 的下一步启动函数 rest_init(),下面简单说一下函数内部相关的初始化,有个初步的了解。详细内容来自https://www.cnblogs.com/lifexy/p/7366782.html仅做学习记录asmlinkage void __init start_kernel(void) { char * command_line; extern struct kernel_p...原创 2021-07-25 13:03:17 · 285 阅读 · 0 评论 -
shell脚本中修改文件的内容
1、修改某文件中的内容:将oldstring修改为newstring sed -i "s/oldstring/newstring/g" test.txt 如果将oldstringXXX修改为newstring: sed -i "s/oldstring*/newstring/g" test.txt2、将某个目录中所有还有oldstring字符串的文件中的old原创 2016-05-13 13:37:26 · 16227 阅读 · 0 评论 -
17、责任链模式(ChainofResponsibility)
概念:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。main(),客户IWomen,发出请求者接口Women,请求者实现类Handler,处理请求抽象类Father,处理请求实现类,责任链之一Husband,处理请求实现类,责任链之二Son,处理请求实现类,责任链之三原创 2016-04-18 15:35:25 · 234 阅读 · 0 评论 -
安装ubuntu基本开发环境
********************************安装ubuntu基本开发环境 ********************************build-essential 指的是编译程序必须的软件包。查看该软件包的依赖关系,可以看到以下内容: $ apt-cache depends build-essential build-essen原创 2015-11-10 10:47:32 · 813 阅读 · 0 评论 -
ubuntu linux ssh 自动输入密码
ubuntu linux ssh 自动输入密码第一种方法,直接使用expect脚本:#!/usr/bin/expect -f spawn ssh myname@192.168.1.5 expect "assword" set timeout 300 send "mypassword\r" interact注意:原创 2015-11-12 10:22:46 · 2736 阅读 · 0 评论 -
11、桥梁模式(Bridge)
桥梁模式的模型: 火车 产品A 商人 赚钱 桥梁 产品B 产品属性原创 2016-04-11 17:28:13 · 282 阅读 · 0 评论 -
12、命令模式(command)
原始工作流程:命令人 找甲 让其做甲A--》甲B--》甲D (完成1任务) 找乙 让其做乙A--》乙C--》乙E (完成2任务) 找丙 让其做丙A--》丙C--》丙D (完成3任务)命令模式工作流程:(将每个任务封装成一个命令类原创 2016-04-11 17:57:53 · 242 阅读 · 0 评论 -
13、装饰模式(Decorator)
装饰模式,动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活。假设张三的家长要查看张三的成绩,那么要通过学校成绩报告来查询,那么我们现在设定一下成绩报告。首先有成绩单类ISchoolReport(ISchoolReport时最终的数据来源模板,ISchoolReport基类模板) 基类可以查看整体报告,可以通过姓名查看个人成绩。每个年级的原创 2016-04-11 18:00:55 · 190 阅读 · 0 评论 -
14、迭代器模式(Iterator)
迭代器模式:宗旨提供一种方法顺序访问一个聚合对象中各个元素,而又不需暴露该对象的内部表示。迭代器模式的本质就是迭代器,其实迭代器模式就是用迭代器来实现对元素(类或者变量等)的管理。图示: Project 类原创 2016-04-11 19:14:49 · 269 阅读 · 0 评论 -
15、组合模式(Composite)
组合模式:将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户对单个对象和组合的使用具有一致性。main(),客户CCorpNode,抽象基类,实现基本信息CBranchNode,树枝节点,实现Addordinate()函数和GetSubordinate()函数CLeafNode,叶子节点,IsLeaf属性总是“true”说明:组合模式主要是实现在CB原创 2016-04-18 15:32:36 · 227 阅读 · 0 评论 -
16、观察者模式(Observer)
观察者模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。main(),IObservable,被观察者接口CHanFeiZiObservable,被观察者韩非子IObserver,观察者接口CLiSiObserver,观察者李斯CZhouSiObserver观察者周斯说明:将观察者聚集到被观察者韩非子身边,韩非原创 2016-04-18 15:34:10 · 424 阅读 · 0 评论 -
linux利用patch和diff命令制作文件补丁
linux利用patch和diff命令制作文件补丁 因为在 u-boot 移植过程中,有几处通用文件要修改,如果每次都要手动修改就太麻烦了。制作补丁可以解决这个问题。学习资料的收集比较简单,方法一类似于这种初级问题网上资料非常丰富, google 或者 baidu 搜索一下,然后选择有价值的资料,方法二是阅读 man 在线文档。完成收集工作,当然最终要在自己的Linux 上转载 2015-11-10 10:37:01 · 257 阅读 · 0 评论