<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Sherlock_Homles的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Sherlock_Homles</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Sherlock_Homles]]></copyright><item><title><![CDATA[Android | 查看被测应用程序的package和launchable-activity]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105993060</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105993060</guid><author>Sherlock_Homles</author><pubDate>Fri, 08 May 2020 13:10:59 +0800</pubDate><description><![CDATA[上一篇博客提到如何通过adb命令启动手机app，adb启动应用：


adb shell am start -n 包名/类名  # -n参数可以不加

可以看到启动一个app需要包名和类名两个参数。包名可以直接获取，但类名相对来说无法直接获取，现提供以下方法获取类名。

一、工具介绍

1.appt

window系统：

这里要用到一个程序aapt.exe，下载地址：appt.exe




...]]></description><category></category></item><item><title><![CDATA[Android | adb命令编写Android自动化测试脚本]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105589006</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105589006</guid><author>Sherlock_Homles</author><pubDate>Fri, 17 Apr 2020 22:27:38 +0800</pubDate><description><![CDATA[一、简介：

以前因为手机root权限问题，一直没有实现脚本自动化测试，最近看了一些博客，进行了一些实验，发现自己根据adb命令来写一下脚本来执行自动化测试也是可行的，主要是为了解放双手，顺便测试一下程序的稳定性。

脚本来执行测试的优缺点

写起来容易
	基本上可以实现90%以上的功能性覆盖
	测试结果需要通过自己观察整个过程和日志文件来得出的
	有些外部的动作，脚本是无法实现的，比如需要录入指...]]></description><category></category></item><item><title><![CDATA[Android | 系统源代码目录与系统目录]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105586160</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105586160</guid><author>Sherlock_Homles</author><pubDate>Fri, 17 Apr 2020 21:21:02 +0800</pubDate><description><![CDATA[一、简介：


1.Android源代码的目录中包含了Android系统所有的源代码，从底层驱动到上层应用，Android系统对所有文件都进行了详细管理；
2.而在手机中，Android系统的目录与源代码的目录并不是一一对应的，而是源代码编译之后，与打包生成的Image文件的结构相同；


1.Android源代码目录

这是安卓源代码网站，页面如下：



AndroidXRef详细使用介绍：A...]]></description><category></category></item><item><title><![CDATA[Python | Requirement already satisfied:(包名) 解决办法]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105410522</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105410522</guid><author>Sherlock_Homles</author><pubDate>Thu, 09 Apr 2020 15:29:28 +0800</pubDate><description><![CDATA[近来要研究有关机器学习的算法。。。(为啥我研究个Android微体系结构还要学这个！唉)

在PyCharm里安装库时报错如下：

1.出现问题：pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool...:Read timed out.



原因分析：大概率是因为本地网络波动，下载速度太慢了。。。（明天试试？）
...]]></description><category></category></item><item><title><![CDATA[Simpleperf | Simpleperf 事件分析]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105057328</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105057328</guid><author>Sherlock_Homles</author><pubDate>Mon, 23 Mar 2020 22:05:30 +0800</pubDate><description><![CDATA[一、list帮助文档

输入命令：./simpleperf help list             

Usage: simpleperf list [options] [hw|sw|cache|raw|tracepoint]

   List all available event types.

   Filters can be used ...]]></description><category></category></item><item><title><![CDATA[CPU | uOps与Pipeline Slots]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105046738</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/105046738</guid><author>Sherlock_Homles</author><pubDate>Mon, 23 Mar 2020 13:36:45 +0800</pubDate><description><![CDATA[[uOps]

Metric Description

uOp, or micro-op, is a low-level hardware operation. The CPU Front-End is responsible for fetching the program code represented in architectural instructions and decoding ...]]></description><category></category></item><item><title><![CDATA[Python | 解决ModuleNotFoundError: No module named 'utils']]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/104334762</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/104334762</guid><author>Sherlock_Homles</author><pubDate>Sat, 15 Feb 2020 21:44:15 +0800</pubDate><description><![CDATA[运行PyCharm时报错如下：



出现问题：ModuleNotFoundError: No module named 'utils’

解决方法：

python2安装

pip install web.py

python3安装

pip install web.py==0.40-dev1


电脑python版本3.7，按照python3安装报错如下：（解决方案在后面）

ERROR: E...]]></description><category></category></item><item><title><![CDATA[Linux | Ubuntu中could not get lock /var/lib/dpkg/lock解决方案]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/104209955</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/104209955</guid><author>Sherlock_Homles</author><pubDate>Fri, 07 Feb 2020 14:54:46 +0800</pubDate><description><![CDATA[1：遇到的问题：

在运行apt install adb命令的时候，如下报错：



2：问题原因：主要是因为apt还在运行

3：解决方案：杀死所有的apt进程。

　　1：查找所有apt相关的进程，并用命令杀死。


wqn@221b:~$ ps afx|grep apt
 2263 pts/6    S+     0:00          |       \_ grep --color=...]]></description><category></category></item><item><title><![CDATA[Android | Ubuntu 16.04配置Android Studio 3.5版本]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/103722403</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/103722403</guid><author>Sherlock_Homles</author><pubDate>Fri, 27 Dec 2019 00:30:20 +0800</pubDate><description><![CDATA[想使用simpleperf测试Android手机上系统以及app 的各种性能，感觉安装一个Android studio会方便一些。现在linux版本下安装Android Studio 3.5版本。



一、下载安装jdk、sdk、Android studio

网站下载jdk，sdk和android studio http://tools.android-studio.org

下载下面这...]]></description><category></category></item><item><title><![CDATA[Linux | /dev/loop0文件设备、虚拟设备/dev/null、/dev/zero、/dev/random和/dev/urandom]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/103340222</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/103340222</guid><author>Sherlock_Homles</author><pubDate>Sun, 01 Dec 2019 22:26:51 +0800</pubDate><description><![CDATA[1.块设备

块设备是i/o设备中的一类，是将信息存储在固定大小的块中，每个块都有自己的地址，还可以在设备的任意位置读取一定长度的数据，例如硬盘,U盘，SD卡等。

2. loop设备介绍

在类 UNIX 系统里，loop 设备是一种伪设备(pseudo-device)，或者也可以说是仿真设备。它能使我们像块设备一样访问一个文件。

在使用之前，一个 loop 设备必须要和一个文件进行连接。这种...]]></description><category></category></item><item><title><![CDATA[Linux | 文件在系统中的传输rsync]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/103172728</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/103172728</guid><author>Sherlock_Homles</author><pubDate>Wed, 20 Nov 2019 22:11:40 +0800</pubDate><description><![CDATA[当我们想远程发送给另一个主机文件时有很多种方法，今天主要介绍使用rsync命令远程传输，rsync的传输方式是创建一个镜像，不像scp命令是复制粘贴的过程，所以rsync命令要比scp命令要快很多，但同时会忽视文件的属性（权限，用户，组，时间戳），连接文件，设备文件。在scp传输的过程/mnt和/mnt/在传输之后都会存在mnt这个目录，而rsync命名的/mnt是包含目录本身，而/mnt/是不包...]]></description><category></category></item><item><title><![CDATA[Android | Ubuntu16.04 （Android 4.0.1源码）下载及编译报错整理]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/103104261</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/103104261</guid><author>Sherlock_Homles</author><pubDate>Sun, 17 Nov 2019 16:13:20 +0800</pubDate><description><![CDATA[编译Android源代码建议使用Linux或者Mac系统，在虚拟机上或者其他不支持的系统（如Windows）上编译Android系统也是可能的。Google内部针对Android系统的编译和测试工作大多是在Ubuntu LTS(14.04)上进行。本文是在Ubuntu16.04版本下进行的。

1.编译环境准备

python 2.X

CNU Make 3.81 -- 3.82

Git 1.7...]]></description><category></category></item><item><title><![CDATA[Cache | 缓存Cache及Cache Line详解]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/100987044</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/100987044</guid><author>Sherlock_Homles</author><pubDate>Wed, 18 Sep 2019 16:49:16 +0800</pubDate><description><![CDATA[1.计算机存储体系简介

 存储器是分层次的，离CPU越近的存储器，速度越快，每字节的成本越高，同时容量也因此越小。寄存器速度最快，离CPU最近，成本最高，所以个数容量有限，其次是高速缓存（缓存也是分级，有L1，L2等缓存），再次是主存（普通内存），再次是本地磁盘。



 寄存器的速度最快，可以在一个时钟周期内访问，其次是高速缓存，可以在几个时钟周期内访问，普通内存可以在几十个或几百...]]></description><category></category></item><item><title><![CDATA[Mesos | 1.3.2 webui static 界面代码分析 ——controllers.js]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/88353414</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/88353414</guid><author>Sherlock_Homles</author><pubDate>Fri, 12 Jul 2019 23:05:36 +0800</pubDate><description><![CDATA[webui 用到的自定义js文件 constroller-js

第8行:

getSelection()
			返回一个 Selection 对象，表示用户选择的文本范围或光标的当前位置。
		 

第26行 localStorage 用于长久保存整个网站的数据，保存的数据没有过期时间，直到手动去除。

setItem(keyname,value)
			添加键和值，如果对应的值存在，则...]]></description><category></category></item><item><title><![CDATA[Mesos | 1.3.2 webui static 界面代码分析 ——app.js/relative-date.js]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/88310026</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/88310026</guid><author>Sherlock_Homles</author><pubDate>Thu, 07 Mar 2019 21:22:46 +0800</pubDate><description><![CDATA[一、app.js

（一）filter

1. truncateMesosID   / / 先分割，删除指定字符串，重组



string.split(separator,limit)

split() 方法用于把一个字符串分割成字符串数组。

提示：如果把空字符串 (&quot;&quot;) 用作 separator，那么 stringObject 中的每个字符之间都会被分割。注意：split() 方...]]></description><category></category></item><item><title><![CDATA[Linux | 创建和删除软、硬链接]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/86772835</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/86772835</guid><author>Sherlock_Homles</author><pubDate>Fri, 08 Feb 2019 00:51:09 +0800</pubDate><description><![CDATA[在Linux系统中,内核为每一个新创建的文件分配一个inode(索引结点),每个文件都有一个惟一的inode号。文件属性保存在索引结点里，在访问文件时，索引结点被复制到内存，从而实现文件的快速访问。

（ inode(发音：eye-node)译成中文就是索引节点，它用来存放档案及目录的基本信息，包含时间、档名、使用者及群组等。inode 是 UNIX 操作系统中的一种数据结构，其本质是结构体，它包...]]></description><category></category></item><item><title><![CDATA[CPU | Cache 基本概念和基本原理]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/86031578</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/86031578</guid><author>Sherlock_Homles</author><pubDate>Mon, 07 Jan 2019 23:34:29 +0800</pubDate><description><![CDATA[一 、Cache的基本概念

Allocation

         在cache中发现一个位置，并把新的cache数据存到这个位置的过程。这个处理过程可能包括 evicting（驱逐）cache中已存在的数据，从而为新的数据腾出空间。

Associativity    关联方式

         指每个Set（集）里包含的line frames（行帧）数。也就是cache的way（路）数。...]]></description><category></category></item><item><title><![CDATA[Mesos | 1.3.2 webui static 界面代码分析]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/85239352</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/85239352</guid><author>Sherlock_Homles</author><pubDate>Mon, 24 Dec 2018 22:21:51 +0800</pubDate><description><![CDATA[知识点链接：https://blog.youkuaiyun.com/lilele12211104/article/details/85011877

                      https://blog.youkuaiyun.com/lilele12211104/article/details/85078357

（持续更新中……）

Chamelon新添项目简略分析：

HTML文件：

1.将以前的c...]]></description><category></category></item><item><title><![CDATA[CloudOS | 开源分布式资源管理框架(1)--开发环境搭建]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/84203250</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/84203250</guid><author>Sherlock_Homles</author><pubDate>Sun, 18 Nov 2018 20:19:34 +0800</pubDate><description><![CDATA[HICAS_Chameleon

本文的安装方法，目前只仅针ubuntu16.04版本

安装列表如下

protobuf-2.6.1
	boost-1.68.0
	jdk1.8.0_191
	gtest
	glog
	gmock
	mesos-1.3.2
	git


一.libprocess环境搭建

下载地址：https://github.com/weiguow/libprocess-env...]]></description><category></category></item><item><title><![CDATA[Protobuf | Google Protocol Buffer 的使用和原理]]></title><link>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/83662668</link><guid>https://blog.youkuaiyun.com/Sherlock_Homles/article/details/83662668</guid><author>Sherlock_Homles</author><pubDate>Mon, 05 Nov 2018 23:31:47 +0800</pubDate><description><![CDATA[Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准，目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。他们用于 RPC 系统和持续数据存储系统。

Protocol Buffers 是一种轻便高效的结构化数据存储格式，可以用于结构化数据串行化，或者说序列化。它很适合做数据存储或 R...]]></description><category></category></item></channel></rss>