自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(127)
  • 资源 (1)
  • 收藏
  • 关注

转载 转:LightNVM 移植到 Open Channel UFS 设备的实现分析

https://blog.xiocs.com/archives/33/

2019-12-26 19:24:23 255

转载 转:Android性能优化(九)之被忽视的电量

https://cloud.tencent.com/developer/article/1190954

2019-09-03 10:37:09 170

转载 深入解析Linux内核I/O剖析(open,write实现)

笨拙的菜鸟深入解析Linux内核I/O剖析(open,write实现)Linux内核将一切视为文件,那么Linux的文件是什么呢?其既可以是事实上的真正的物理文件,也可以是设备、管道,甚至还可以是一块内存。狭义的文件是指文件系统中的物理文件,而广义的文件则可以是Linux管理的所有对象。这些广义的文件利用VFS机制,以文件系统的形式挂载在Linux内核中,对

2016-12-16 00:37:00 357

转载 Linux文件系统性能优化

Linux文件系统性能优化分类: LINUX由于各种的I/O负载情形各异,Linux系统中文件系统的缺省配置一般来说都比较中庸,强调普遍适用性。然而在特定应用下,这种配置往往在I/O性能方面不能达到最优。因此,如果应用对I/O性能要求较高,除了采用性能更高的硬件(如磁盘、HBA卡、CPU、MEM等)外,我们还可以通过对文件系统进行性能调优,来获得更高的I

2016-12-16 00:34:18 520

转载 Linux内核文件系统-页高速缓存

Linux内核文件系统-页高速缓存摘要: Linux内核的VFS是非常经典的抽象,不仅抽象出了flesystem,super_block,inode,dentry,file等结构,而且还提供了像页高速缓存层的通用接口,当然,你可以自己选择是否使用或者自己定制使用方式。本文主要根据自己阅读Linux Kernel 3.19...Linux内核的VFS是非常经典的抽

2016-12-16 00:30:38 246

转载 Linux内存管理原理

本文以32位机器为准,串讲一些内存管理的知识点。 1. 虚拟地址、物理地址、逻辑地址、线性地址 虚拟地址又叫线性地址。linux没有采用分段机制,所以逻辑地址和虚拟地址(线性地址)(在用户态,内核态逻辑地址专指下文说的线性偏移前的地址)是一个概念。物理地址自不必提。内核的虚拟地址和物理地址,大部分只差一个线性偏移量。用户空间的虚拟地址和物理地址则采用了多级页表进行映射,但仍

2016-12-16 00:17:02 148

转载 内存分配和回收——三种适应法

#include#include #define Free 0 //空闲状态#define Busy 1 //已用状态#define OK 1    //完成#define ERROR 0 //出错#define MAX_length 640 //最大内存空间为640KBtypedef int Status;int flag; typedef struc

2016-12-10 03:17:46 572

原创 NVMe

当命令被NVM子系统处理完成时,控制器会提交CQE到主机的CQ。如果MSI-X或者多消息MSI被使用,则中断向量会提醒主机可能有新的完成命令待处理。如果pin-based中断或者单消息MSI中断被使用,主机软件将查询CQ是否有新的CQE。之后主机会更新CQ Head Tail Doorbell寄存器来通知控制器已释放CQE,并清除关联的中断。

2016-01-18 19:33:18 321

原创 NVMe- 控制器架构7.1

控制器要提交较高优先级的命令到对应的SQ中去。优先级是跟SQ本身相关联的,因此命令的优先级是基于其提交的SQ。控制器的仲裁控制横跨所有SQ,其根据仲裁机制会公平处理所有命令或者根据优先级处理所有命令。

2016-01-18 19:32:42 627

原创 NVMe

7.1      介绍主机软件通过事先分配的SQ提交命令道控制器,然后通过写SQ Tail Doorbell寄存器来提醒控制器有新的提交命令。从之前Doorbell寄存器值和当前Doorbell寄存器值的差值可以得出提交命令的数量。控制器从SQ队列中取出命令并将其提交到NVM子系统中处理。除了融合操作,不管是同个SQ队列内的或者是不同SQ队列内的命令,它们的处理顺序没有约束。主

2016-01-18 19:31:03 350

转载 KVM相关社区开源动态月报

KVM相关社区开源动态月报 201503  Qemu社区目前进入V2.3版本的hardfreeze时刻,所以特性提交不多,关键特性如下:Qemu社区 x86:1. virtio-gpu/2d  redhat2. 用户态处理页异常userfaultfd    redhat3. block同步框架  fujistu4. COLO虚拟机热备框架  huawei5.

2015-06-22 14:19:54 706

原创 linux-c-201433

12 公共资源包括全局变量、双口RAM、共享内存等。几种常见的互斥实现方案有( )①:开关中断②:锁任务③:动态调整优先级④:信号量13 全球的法律环境和政治环境已经发生非常突出的变化,网络安全问题已上升为法律问题、政治问题,政治的博弈已转移到网络安全领域。在软件开发阶段,需要遵循安全编码的要求,如下安全编码要求正确的是(   )①:代码注释中可以有开发人员的电子邮箱地址,

2015-03-10 21:20:56 127

原创 linux-c-201432

16 据统计,90%的网络安全问题来源于第三方软件(包括开源软件),外部客户对第三方软件的网络安全高度重视,基于此,华为公司关于第三方软件管理总体要求是:( )①:所有开源及第三方源代码、二进制文件等使用前,必须提交使用申请后才可使用;②:不能从非正式渠道获取任何形式的源代码、二进制文件等用于产品中;③:第三方软件版本升级、新增第三方软件时,必须提交使用申请后才可使用;④:所有第三

2015-03-10 21:20:14 144

原创 linux-c-201431

6 (C002) 软件的集成测试工作最好由( )承担,以提高集成测试的效果①:该软件的设计人员  ②:该软件开发组的负责人③:该软件的编程人员   ④:不属于该软件开发组的软件设计人员7 (C003) 使用白盒测试方法时,确定测试数据应根据( )和指定的覆盖标准①:程序的内部逻辑                      ②:程序的复杂程度③:使用说明书      

2015-03-10 21:19:55 144

原创 linux-c-2014-43

6 (C002) 软件的集成测试工作最好由( )承担,以提高集成测试的效果①:该软件的设计人员  ②:该软件开发组的负责人③:该软件的编程人员   ④:不属于该软件开发组的软件设计人员7 (C003) 使用白盒测试方法时,确定测试数据应根据( )和指定的覆盖标准①:程序的内部逻辑                      ②:程序的复杂程度③:使用说明书      

2015-03-10 21:17:01 197

原创 linux-c-2014-42

13 全球的法律环境和政治环境已经发生非常突出的变化,网络安全问题已上升为法律问题、政治问题,政治的博弈已转移到网络安全领域。在软件开发阶段,需要遵循安全编码的要求,如下安全编码要求正确的是(   )①:代码注释中可以有开发人员的电子邮箱地址,以便于外部交流;②:C标准的随机数产生函数rand()可以用于生成密钥相关的随机数;③:正式发布给网上客户的代码、代码注释、脚本或者二进制文件中

2015-03-10 21:16:18 151

原创 linux-c-20144

16 据统计,90%的网络安全问题来源于第三方软件(包括开源软件),外部客户对第三方软件的网络安全高度重视,基于此,华为公司关于第三方软件管理总体要求是:( )①:所有开源及第三方源代码、二进制文件等使用前,必须提交使用申请后才可使用;②:不能从非正式渠道获取任何形式的源代码、二进制文件等用于产品中;③:第三方软件版本升级、新增第三方软件时,必须提交使用申请后才可使用;④:所有第三

2015-03-10 21:13:50 138

转载 linux-c7

本试题希望各位同事通过软件模拟Cache的工作机制,实现软件Cache控制器功能,从而使各位同事对处理器的Cache机制有深入的理解,促进各位同事在实际工作中正确理解和利用处理器的Cache功能。

2015-03-02 18:50:58 193

原创 (2)linux-c3

1.2.11    以下对数组进行正确初始化的是()①:static char myword[]='Turbo\0';②:static char myword[]={'T','u','r','b','o','\0'};③:static char myword[]={"Turbo\0"};④:static char myword[]="Turbo\0";1.2.12  衡量一个

2015-03-02 18:45:10 351

原创 (2)linux-c2

1.2.6  能影响中断响应次序的技术是()①:时间片   ②:中断 ③:中断优先级 ④:中断屏蔽 ⑤:特权指令    1.2.7  在多进程的并发系统中,有关进程间的关系的正确说法是()①:都是逻辑上无关的               ②:有些可能逻辑上无关的③:都是逻辑上有关的               ④:有些可能逻辑上有关的⑤:它们之间都直接或

2015-03-02 18:44:21 245

原创 (2)linux-c1

1.2.1 进程从运行状态进入就绪状态的原因可能是():①:被选中占有处理机;②:等待某一事件;③:等待的事件已发生;④:时间片用完;1.2.2  产生系统死锁的原因可能是由于():①:进程释放资源;②:一个进程进入死循环;③:多个进程竞争,资源出现了循环等待;④:多个进程访问共享数据;1.2.3    下面()不是操作系统中调度程序所采用的调度算法①:

2015-03-02 18:43:37 139

原创 linux-c6

11 (A033) 要定义一个有5个元素的指针数组,正确的定义是()A:int  (*p) [5]    B:int p[5]        C:int  *p[5]     D:int  *p12 (B001) 在"文件包含"预处理语句的使用形式中,当#include后面的文件名用(尖括号)括起时,找寻被包含文件的方式正确的是()A:仅仅搜索当前目录B:仅仅搜索源程序

2015-03-02 18:42:07 229

原创 linux-c5

6 (A064) 计算机内存一般分为静态数据区、代码区、栈区和堆区,若某一指令的操作数之一采用立即数寻址方式,则该操作数位于()A: 静态数据区 B: 代码区 C: 栈区 D: 堆区7 (A029) 以下定义整型3行4列的二维数组a并初始化不正确的是()A:int a[3][4]={0}B:int a[][4]={0,1,2,3,4,5,6,7,8,9,10,11,12

2015-03-02 18:41:40 286

原创 linux-c4

1 (A020) 以下叙述中不正确的是()A:表达式a&=b等价于a=a&bB:表达式a|=b等价于a=a|bC:表达式a!=b等价于a=a!bD:表达式a^=b等价于a=a^b2 (A014) 以下程序的输出结果是fun(int x, int y, int z){    z=x*x+y*y; }main(){     int a=31;   

2015-03-02 18:40:16 192

原创 linux-c4

16 (C001) 为了提高测试的效率,应该(  )A:随机地选取测试数据                   B:取一切可能的输入数据作为测试数据C:在完成编码以后制定软件的测试计划D:选择发现错误的可能性大的数据作为测试数据17 (C003) 使用白盒测试方法时,确定测试数据应根据(   )和指定的覆盖标准A:程序的内部逻辑                     

2015-03-02 18:38:00 117

原创 linux-c3

37 (E016) 在局域网中,以下哪种传输介质既可以用于物理层10BASE-T协议,又可以适用于100BASE-T协议?A: 同轴电缆 B: 3类非屏蔽双绞线   C: 5类非屏蔽双绞线 D: 光纤电缆38 (E021) 以下关于NOR FLASH说法正确的是?①:软件可以象读写内存的方式一样读写NOR FLASH中的数据②:NOR FLASH中的数据掉电后不丢失

2015-03-02 18:37:35 376

原创 linux-c2

31 (E031) 一个16K×32位的存储器,其地址线和数据线的总和至少是(不考虑复用)A:48B:46C:36D:3232 (E035) 以下接口不属于串行接口的是A:SATAB:PCIC:PCIED:RapidIO33 (E033) 传输中经常用到奇偶校验,其中奇校验能够A:检测1位错误,纠正0位错误B:检测2位错误,纠正1位错误C:检测奇

2015-03-02 18:36:05 108

原创 linux-c1

26 (D027) 多核cpu的软件编程中,说法错误的是A:需要注意核间共享数据、变量的一致性B:遇到DMA等硬件操作内存时,注意通过cache操作,来保证数据的一致性C:尽量避免使用锁,以免影响系统性能D:每个core承担的工作应合理分配,以使整个系统最佳负载均衡27 (D006) 嵌入式系统大都采用嵌入式实时操作系统 RTOS,以下哪些不是对 RTOS 时间性能的评价指标(

2015-03-02 18:33:20 248

原创 linux-c0

1 (A020) 以下叙述中不正确的是()A:表达式a&=b等价于a=a&bB:表达式a|=b等价于a=a|bC:表达式a!=b等价于a=a!bD:表达式a^=b等价于a=a^b2 (A014) 以下程序的输出结果是fun(int x, int y, int z){    z=x*x+y*y; }main(){     int a=31;   

2015-03-02 18:27:52 419

原创 linux-c

21 (D025) 在中断响应过程中,CPU保护程序计数器的主要目的是____A:使CPU能找到中断服务程序的入口地址 B:为了实现中断嵌套C:为了使CPU在执行完中断服务程序时能回到被中断程序的断点处D:为了使CPU与I/O设备并行工工作22 (D020) 在多任务操作系统中,进程切换也称为上下文切换,在切换的过程中不需要保存和恢复以下那些内容?(__)A:PC寄存器

2015-03-02 18:25:43 300

原创 linux

linux

2015-03-02 18:20:06 252

原创 日志分析

具体调用栈:\[75683.009185s][1970:01:01 21:01:12][pid:0,cpu0,in irq]INFO: rcu_preempt detected stalls on CPUs/tasks: { 2} (detected by 0, t=7397867 jiffies, g=18446744073709551380, c=18446744073709551379,

2014-11-03 19:55:35 564

原创 ddr带宽申请接口通过pm qos驱动实现

ddr带宽申请接口通过pm qos驱动实现:1、包含头文件,linux/pm_qos.h2、主要接口void pm_qos_add_request(struct pm_qos_request *req, int pm_qos_class, s32 value)添加一个qos请求,req内存空间由用户提供,pm_qos_class设置为枚举类型PM_QOS_MEMORY_THROUG

2014-09-22 20:35:50 1460

转载 linux-kernel-gpufreq-mali_kbase_config_XXXX.c

/* * * (C) COPYRIGHT ARM Limited. All rights reserved. * * This program is free software and is provided to you under the terms of the * GNU General Public License version 2 as published by

2014-08-16 18:13:13 1037

转载 linux-kernel-devfreq-governor_maliondemand.c

/* *  linux/drivers/devfreq/governor_maliondemand.c *  Copyright (C) 2013 Hisilicon * * base on: *  linux/drivers/devfreq/governor_simpleondemand.c * * This program is free software; you

2014-08-16 18:07:04 320

转载 linux-kernel-freqtable.c

/* * linux/drivers/cpufreq/freq_table.c * * Copyright (C) 2002 - 2003 Dominik Brodowski * * This program is free software; you can redistribute it and/or modify * it under the terms of the

2014-08-16 12:59:13 250

转载 linux-kernel-cpufreq_stats.c

/* *  drivers/cpufreq/cpufreq_stats.c * *  Copyright (C) 2003-2004 Venkatesh Pallipadi venkatesh.pallipadi@intel.com>. *  (C) 2004 Zou Nan hai nanhai.zou@intel.com>. * * This program is fr

2014-08-16 11:46:57 315

转载 linux-kernel-cpufreq.c_2

static void update_policy_cpu(struct cpufreq_policy *policy, unsigned int cpu){ int j; policy->last_cpu = policy->cpu; policy->cpu = cpu; for_each_cpu(j, policy->cpus)  per_cpu(cpufreq_pol

2014-08-16 11:45:30 186

转载 linux-kernel-cpufreq.c_1

/* *  linux/drivers/cpufreq/cpufreq.c * *  Copyright (C) 2001 Russell King *            (C) 2002 - 2003 Dominik Brodowski linux@brodo.de> * *  Oct 2005 - Ashok Raj ashok.raj@intel.com> *

2014-08-16 11:45:00 345

转载 linux-kernel-cpufreq_interactive1

/* * drivers/cpufreq/cpufreq_interactive.c * * Copyright (C) 2010 Google, Inc. * */#include #include #include #include #include #include #include #include #include #inclu

2014-08-16 11:40:17 252

Eclipse下安装Android开发环境NDK和CDT

Eclipse下安装Android开发环境NDK和CDT不错的资料。

2012-12-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除