当前位置: 首页 > news >正文

温州专业网站建设推广wordpress 博客 模板

温州专业网站建设推广,wordpress 博客 模板,班级网站模板素材,泰安seo推广Linux内核初探 linux操作系统历史 开发模式 git 分布式管理git clone 获取git push 提交git pull 更新 邮件组 mailing list patch 内核代码组成 Makfile arch 体系系统架构相关 block 块设备 crypto 加密算法 drivers 驱动#xff08;85%#xff09; atm 通信bluet…Linux内核初探 linux操作系统历史 开发模式 git 分布式管理git clone 获取git push 提交git pull 更新 邮件组 mailing list patch 内核代码组成 Makfile arch 体系系统架构相关 block 块设备 crypto 加密算法 drivers 驱动85% atm 通信bluetooth 蓝牙 firmware外设 fs 文件系统 include 头文件 init 启动代码 ipc 进程通信代码 kernel 内核 lib 库 mm 内存管理 net 网络相关 scripts 脚本 security 安全相关 sound 音频相关 tools 工具perf 测试工具 usr 生成打包等 virt 虚拟化 内核配置和编译 工具链编译器 arm-linux-gcc、链接工具 ld、查看 objdump、调试配置内核决定需要编译的代码模块编译内核生成可执行文件 vmlinux原始未压缩的可执行文件、zImage压缩的可执行文件压缩vmlinux解压程序头和uImage用于给uboot引导的zImage 花里胡哨 ls -a 显示隐藏文件即.*** Y 编译内核 N 不编译内核 M 模块编译 make -j4 zImage CC 一个.o LD 一个目标下的.o Linux内核的基本概念 物理地址虚拟地址 地址转换内核使用的地址一定是内核地址但是cpu使用的是物理地址中间存在一个转换过程。 phys_to_virt:virt_to_phys: 页表虚拟 -》物理内存管理最小单位为页大小为4k页表大小所有物理地址/4k。 页表初始化start_kernel-mm_init-mm_alloc_pgd划出一段内存页表初始化 ioremap(cookie,size)最后调用 分配pgd 内存属性可读、可写、可执行。 Linux内核中的内存管理 页4k byte为单位进行管理 分配内存举例 alloc_pages(gfp_mask,order)分配内存的底层调用可以分配整页的内存gfp_mask是不同选项的组合GFP_NOWAIT分配不允许等待GFP_ATOMICGFP_NOFS不能进行文件操作GFP_KERNEL给内核用GFP_USERGFP_IOFS分配内存可以IO操作order分配2的次方的页kmalloc分配内存的函数以字节为单位分配内存必定是连续的。vmalloc分配内存物理上不连续虚拟地址连续。 系统调用Linux特用用户调用内核函数API的媒介具体实现通过一个 异常 使得应用程序陷入内核中执行 内核进程、线程 内核只有线程没有进程 线程的task_struct核心结构包括进程的优先级、堆栈信息、打开文件句柄信息 线程的调度3种优先级SCHED_RR、SCHED_PRI、SCHED_RT调度的时机时钟中断发生Linux发生内核态和用户态相互切换Liunx执行完信号 内核中同步和线程间通信方式 原子操作不可能被打断的基本操作 同步通信方式 自旋锁spin_lock 信号量up释放 和 down 异步通信方式 信号 – signal 处理信号的函数在task_struct中指明。 中断 中断的硬件概念就是一个外部的电平信号中断处理的上半部需要linux内核关闭其他硬件信号中断处理的下半部上半部中来不及处理、比较冗长的程序段需要等待其他程序结果或者需要等待获取其他资源的程序段。 时钟和定时器管理 时钟硬件概念能够产生一种定时中断的电路RTC实时时钟或实时计数器和system timer很多情况就是用来作为延迟和计算相对时间tick时钟中断的周期HZ jiffies全局变量如果是64位系统就是64位的变量记录了从上电开始所经历的tick数 文件系统 虚拟文件系统VFS是linux内核为了屏蔽物理文件系统的差异所产生的一个中间层。物理文件系统ext4最大特点是具有完善的日志系统yaffs2比较适合在nand flash部署的文件系统ubifs和btfs Linux驱动程序开发基础 内核模块编程 驱动模块化编程的好处 驱动编译进内核导致内核非常大很多驱动都只是在特定机器上使用实现热插拔提供基础 模块编程的代码实例 实例验证hello.ko模块 Makefile的写法 - 其他- 模块位置可以随意放置- 内核代码更新模块代码也要更新驱动程序访问硬件的特殊性 DMA dma的基本硬件概念是存在外设设备中的一个硬件控制器作用是不需要cpu协助就可以搬移内存数据到外设的存储设备中。 dma的基本配置过程通过程序配置dma控制器告诉dma控制器它可以访问的内存地址。然后cpu将要传给外设的数据写到事前约定好的地址。 IO子系统在嵌入式系统中实现对外围附属设备进行控制的有效手段。通过IO端口进行0和1操作可以发指令或者传递信息给附属设备。 Linux设备模型最初目的是实现只能电源管理 kobject 一个设备驱动会建立一个kobject偶尔也有因为功能复杂的原因而建立多个kobject。 koject会有一个一个kobj_type属性。 - entry 本人所在目录- parent父节点- kset一组类似性质的kobject集合- ktype类型- kref这个对象的引用计数kobject一般都是sysfs中的一个目录从而形成对用户空间的交互。 引用计数kref。 kset一组类似性质的kobject集合一个kset也就是一个子系统它是sysfs的一个顶层目录的表征。比如block子系统各种总线子系统。 sysfs虚拟文件系统管理内核的设备而非磁盘它是kobject对象的完整视图 主要apisysfs_create_file; sysfs_create_link; sysfs_remove_file; sysfs_remove_link 提供丰富的内核和用户空间交互的手段 sysfs主要目录结构 - block块设备独立于所链接的总线。- devices被所有内核识别的硬件设备依照链接他们的总线对其进行组织。- bus系统中用于连接设备的总线- drivers在内核中注册的设备驱动程序- class系统中设备的类型声卡网卡显卡等同一类可能包含由不同总线连接的设备于是由不同的驱动程序驱动。- power处理一些硬件设备电源状态的文件。- firmware处理一些硬件设备固件的文件。udev处理热插拔机制通过设备驱动加载时注册kobject后向用户空间发送uevent实现的。 Linux驱动的分类 字符设备一般都是以串行顺序依次进行访问典型的包括触摸屏鼠标按键等。 cdev结构 块设备一般以扇区、块为单位进行读写访问例如硬盘cdromflash等 网络设备以太网的设备。 杂项设备没法归类或复合设备。 Linux内核的基本调试方法 printk 级别dmesg打开和关闭调试信息 oops kprobe kcore
http://www.w-s-a.com/news/588246/

相关文章:

  • 技术支持 佛山网站建设wordpress不用ftp
  • 广州定制app开发wordpress配置搜索引擎优化
  • 兰州网站建设论坛四川建设网官网登录
  • 在线作图免费网站湖南批量出品机
  • 深圳做网站公司有哪些地方妇联加强网站平台建设
  • vps建设网站别人访问不了网页链接生成器
  • 网站建设一般要多少钱电商平台取名字大全
  • 怎么做网站封面上的图网站开发语言 微信接口
  • 免费观看网站建设优化安徽
  • 上海电商网站开发公司做婚恋网站的翻译好吗
  • 以网站建设为开题报告大数据技术就业前景
  • dw做网站字体 别人电脑显示青岛活动策划公司
  • 网站成立时间查询墨猴seo排名公司
  • 技术支持 随州网站建设苏州企业网站建设定制
  • 美食网站开发目的与意义网站开发环境选择
  • 青岛西海岸新区城市建设局网站开发板在null不可用
  • 企业信息管理系统免费seo优化个人博客
  • 做任务的设计网站泰州哪里做网站
  • 什么网站可以做设计赚钱吗南京十大软件公司排名
  • 网站开发时间进度北京有哪些著名网站
  • 深圳比较好的设计网站公司自己的网站到期域名如何续费
  • 温州做网站哪儿新云网站模版
  • 网站开发 视频存在哪检察院前期网站建设
  • 备案中的网站信息怎么填如何做分享赚钱的网站
  • 网站行程表怎么做注册公司费用要多少
  • 常见电子商务网站基本模式南山网站公司定
  • 网站搭建代码网站里面送礼物要钱怎么做代码
  • 大学英文网站建设举措wordpress 学院 模板
  • 爱 做 网站吗php网站作业模版
  • wordpress代码乱吗台州做网站seo的