Updated all covers and small css change

This commit is contained in:
2024-04-19 04:41:23 +00:00
parent 2f9718bfbe
commit 6b62306a29
24 changed files with 60 additions and 57 deletions
@@ -2,6 +2,7 @@
title: "STSD: Stop Talking Start Doing"
date: 2016-10-26 22:50:33 -0400
tags: Diary
cover: '/static/2024-04/logo.png'
---
@@ -3,7 +3,7 @@ title: "Using charles proxy to monitor mobile SSL traffics"
date: 2016-10-27 22:50:33 -0400
tags: ["Network", "Charles proxy"]
author: Pengzhan Hao
cover: '/static/2021-12/charles-proxy-logo.png'
cover: '/static/2024-04/charles.png'
---
In this blog, I will generally talk about how to use proper tools to monitor SSL traffics of a mobile devices. Currently, I only can dealing with those SSL traffics which use an obviously certification. Some applications may not using system root cert or they doesn't provide us a method to modify their own certs. For these situation, I still didn't find a good solutions for it. But I'll keep updating this if I get one.
@@ -3,17 +3,18 @@ title: "Some of my previews experiment works: 2016"
date: 2016-10-28 12:27:33 -0400
tags: ["Research", "Log", "Miscellanies"]
author: Pengzhan Hao
cover: '/static/2024-04/research2016.png'
---
This blog contains only some basic record of my works. For some details, I will write a unique blog just for some specific topics.
<!--more-->
# 2016-10
## 2016-10
## Time Experiment of rsync
### Time Experiment of rsync
Patch is based on rsync with version 3.1.2. \[[Rsync](https://download.samba.org/pub/rsync/rsync-3.1.2.tar.gz)\|[Patch](/static/2016-10/rsync/rsync-3.1.2-time.patch)\]
### How to collect data
#### How to collect data
Basically, everything of transmission time and computation time will be output with overall time will be printed on the console.
But we also need some bash script to collect data through different size of random size and with different modification through them.
@@ -22,11 +23,11 @@ But we also need some bash script to collect data through different size of rand
- Start from 8K to 64M, modify at last, \[[Bash script](/static/2016-10/rsync/small2Big_change_at_last.sh)\]
- Start from 8K to 64M, modify at random place with a (slow) python script, \[[Bash script](/static/2016-10/rsync/small2Big_change_at_anyplace.sh)\|[Python program](/static/2016-10/rsync/addbyte.py)\]
## Time Experiment of seafile
### Time Experiment of seafile
Patch is based on seafile 5.1.4. You can find the release from [seafile official repo](https://github.com/haiwen/seafile/releases). You may follow official compile instructions from [here](https://manual.seafile.com/build_seafile/linux.html). \[[Patch **no longer avaiable, new version at following sections**]()\]
### How to collect data
#### How to collect data
We also need everything be done using scripting. But this time I only design added some distance between two increasing files' sizes.
@@ -42,7 +43,7 @@ awk '/CDC|HUT|ALL/ {print $4,$5}' ~/.ccnet/log/seafile.log > results.stat
~~~~
### Install Seafile on odroid xu
#### Install Seafile on odroid xu
Due to failure of my cross-compile to seafile on android. I used develop board as a replacement experiment platform for ARM-seafile testing. I used a [odroid xu](http://www.hardkernel.com/main/products/prdt_info.php?g_code=G137510300620) as hardware standard. Because all I need is an ARM platform, only an ARM-Ubuntu is enough for me. But develop prototype on a board is much fun than coding, I won't address much this time. But I'll start a blog telling some really cool stuff I made for a strange aim.
@@ -60,11 +61,11 @@ sudo dd if=ubuntu-14.04lts-xubuntu-odroid-xu-20140714.img of=/dev/sdb bs=1M conv
sync
~~~~
# 2016-11
## 2016-11
## Android Kernel
### Android Kernel
### How to build an Android Kernel?
#### How to build an Android Kernel?
Generally, I won't tell anything in this parts, just mark some related links, and point out some mistakes or error solutions.
@@ -74,11 +75,11 @@ Generally, I won't tell anything in this parts, just mark some related links, an
- [Packing and Flashing a Boot.img](https://softwarebakery.com/building-the-android-kernel-on-linux) **[highly recommend]**
# 2016-12
## 2016-12
## Android Kernel
### Android Kernel
### How to compile with ftrace?
#### How to compile with ftrace?
If we want to debug under android, ftrace is a great tool for working. But, ftrace is not available in android if we used default configure file. Android kernel configuration is in **arch/arm64/kernel/configs**. We need to add few lines under that.
@@ -94,7 +95,7 @@ CONFIG_SCHED_TRACER=y
CONFIG_STACK_TRACER=y
~~~~
### How to extract android images: Dump an image
#### How to extract android images: Dump an image
If we want to hold a rooted status after flashing boot, we need to extract an image from android devices. We can first use following command to find which blocks belongs to. According to some references, [this article](http://forum.xda-developers.com/showthread.php?t=2450045) provide three ways to dump an image, I picked one for easy using.
+1 -1
View File
@@ -3,7 +3,7 @@ title: "Xv6 introduction"
date: 2017-07-28 14:56:55 -0400
tags: ["Xv6", "Teaching", "Operating system"]
author: Pengzhan Hao
cover: '/static/2021-10/Xv6_LS_Command_Output.png'
cover: '/static/2024-04/xv6.png'
---
In this post, you will learn a few basic concepts of xv6. Learning path will be closed coupled to first project assignment I gave when I assisted in teaching OS classes.
@@ -3,7 +3,7 @@ title: "Generate Word Cloud Figures with Chinese-Tokenization and WordCloud pyt
date: 2020-09-15 22:00:14 -0400
tags: Visualization
author: Pengzhan Hao
cover: '/static/2020-09/2020-06-28.png'
cover: '/static/2024-04/wordcloud.png'
---
Let's generate a word cloud like this.
@@ -3,7 +3,7 @@ title: "EDDL: How do we train neural networks on limited edge devices - PART 1"
date: 2021-10-13 16:53:20 -0400
tags: ["Research", "Edge computing"]
author: Pengzhan Hao
cover: '/static/2021-10/edgelearn-1.png'
cover: '/static/2024-04/eddl1.png'
---
This post introduces our previous milestone in project "Edge trainer", as the paper "EDDL: A Distributed Deep Learning System for Resource-limited Edge Computing Environment." was published.
As the first part of the introductions, I focus only on the motivation and summary of our works.
@@ -3,7 +3,7 @@ title: "EDDL: How do we train neural networks on limited edge devices - PART 2"
date: 2021-10-31 13:01:14 -0400
tags: ["Research", "Edge computing"]
author: Pengzhan Hao
cover: '/static/2021-10/f.5_Impl_leader_worker.png'
cover: '/static/2024-04/eddl2.png'
mathjax: true
---
+1 -1
View File
@@ -3,7 +3,7 @@ title: "Labs of CS350"
date: 2022-02-22 17:08:17 -0400
tags: ["Xv6", "Teaching", "Operating system", "Binghamton university"]
author: Pengzhan Hao
cover: '/static/2022-02/BU.jpeg'
cover: '/static/2024-04/bu.png'
---
This will be a series regarding lab I gave during the spring 2022 semester.
+1 -1
View File
@@ -3,7 +3,7 @@ title: "Debug Kubelet"
date: 2024-04-10 03:34:00 -0400
tags: ["Kubernetes", "Kubelet", "Debug"]
author: Pengzhan Hao
cover: '/static/2024-04/Kubelet.webp'
cover: '/static/2024-04/kubelet.png'
---
## Debug logs
+1
View File
@@ -1,5 +1,6 @@
.image {
max-width: 100%;
border-radius: 13px;
@extend .image--md;
}
.image--md {
+1 -1
View File
@@ -1051,7 +1051,7 @@ input:focus { outline: none; }
.button--xl.button--circle, .button--xl.swiper__button { width: 2.8rem; height: 2.8rem; }
.image { max-width: 100%; }
.image { max-width: 100%; border-radius: 13px; }
.image--md, .image { width: 12rem; }
File diff suppressed because one or more lines are too long
+14 -14
View File
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><generator uri="https://jekyllrb.com/" version="4.2.2">Jekyll</generator><link href="https://blog.pengzhan.dev/feed.xml" rel="self" type="application/atom+xml" /><link href="https://blog.pengzhan.dev/" rel="alternate" type="text/html" hreflang="en" /><updated>2024-04-18T21:19:41-04:00</updated><id>https://blog.pengzhan.dev/feed.xml</id><title type="html">STSD</title><subtitle>My personal blog, some contents are useful, the others are not. Just like my mediocre life.
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><generator uri="https://jekyllrb.com/" version="4.2.2">Jekyll</generator><link href="https://blog.pengzhan.dev/feed.xml" rel="self" type="application/atom+xml" /><link href="https://blog.pengzhan.dev/" rel="alternate" type="text/html" hreflang="en" /><updated>2024-04-19T00:41:17-04:00</updated><id>https://blog.pengzhan.dev/feed.xml</id><title type="html">STSD</title><subtitle>My personal blog, some contents are useful, the others are not. Just like my mediocre life.
</subtitle><author><name>Pengzhan Hao</name><email>haopengzhan@gmail.com</email></author><entry><title type="html">Inotify watcher leaks in Kubelet</title><link href="https://blog.pengzhan.dev/posts/inotify-watcher-leaks-in-kubelet" rel="alternate" type="text/html" title="Inotify watcher leaks in Kubelet" /><published>2024-04-18T16:35:00-04:00</published><updated>2024-04-18T21:14:15-04:00</updated><id>https://blog.pengzhan.dev/posts/inotify-watcher-leaks-in-kubelet</id><content type="html" xml:base="https://blog.pengzhan.dev/posts/inotify-watcher-leaks-in-kubelet"><![CDATA[<h2 id="symptom">Symptom</h2>
<p>Recently, I faced an issue where Kubelet on a node reported error message failed to create file descriptors.</p>
@@ -985,13 +985,13 @@ Using ssh may connect to different physical devices under same domain name, this
</code></pre></div></div>]]></content><author><name>Pengzhan Hao</name></author><category term="Xv6" /><category term="Teaching" /><category term="Operating system" /><summary type="html"><![CDATA[In this post, you will learn a few basic concepts of xv6. Learning path will be closed coupled to first project assignment I gave when I assisted in teaching OS classes. Understand system call and know how to implement a simple one will be coved as the first half. In the second half of this post, I will discuss a little bit more on how to debug xv6 using gdb.]]></summary></entry><entry><title type="html">Some of my previews experiment works: 2016</title><link href="https://blog.pengzhan.dev/posts/some-of-my-previews-exper-work" rel="alternate" type="text/html" title="Some of my previews experiment works: 2016" /><published>2016-10-28T12:27:33-04:00</published><updated>2021-12-11T13:35:39-05:00</updated><id>https://blog.pengzhan.dev/posts/some-of-my-previews-exper-work</id><content type="html" xml:base="https://blog.pengzhan.dev/posts/some-of-my-previews-exper-work"><![CDATA[<p>This blog contains only some basic record of my works. For some details, I will write a unique blog just for some specific topics.
<!--more--></p>
<h1 id="2016-10">2016-10</h1>
<h2 id="2016-10">2016-10</h2>
<h2 id="time-experiment-of-rsync">Time Experiment of rsync</h2>
<h3 id="time-experiment-of-rsync">Time Experiment of rsync</h3>
<p>Patch is based on rsync with version 3.1.2. [<a href="https://download.samba.org/pub/rsync/rsync-3.1.2.tar.gz">Rsync</a>|<a href="/static/2016-10/rsync/rsync-3.1.2-time.patch">Patch</a>]</p>
<h3 id="how-to-collect-data">How to collect data</h3>
<h4 id="how-to-collect-data">How to collect data</h4>
<p>Basically, everything of transmission time and computation time will be output with overall time will be printed on the console.
But we also need some bash script to collect data through different size of random size and with different modification through them.</p>
@@ -1002,11 +1002,11 @@ But we also need some bash script to collect data through different size of rand
<li>Start from 8K to 64M, modify at random place with a (slow) python script, [<a href="/static/2016-10/rsync/small2Big_change_at_anyplace.sh">Bash script</a>|<a href="/static/2016-10/rsync/addbyte.py">Python program</a>]</li>
</ul>
<h2 id="time-experiment-of-seafile">Time Experiment of seafile</h2>
<h3 id="time-experiment-of-seafile">Time Experiment of seafile</h3>
<p>Patch is based on seafile 5.1.4. You can find the release from <a href="https://github.com/haiwen/seafile/releases">seafile official repo</a>. You may follow official compile instructions from <a href="https://manual.seafile.com/build_seafile/linux.html">here</a>. [<a href="">Patch <strong>no longer avaiable, new version at following sections</strong></a>]</p>
<h3 id="how-to-collect-data-1">How to collect data</h3>
<h4 id="how-to-collect-data-1">How to collect data</h4>
<p>We also need everything be done using scripting. But this time I only design added some distance between two increasing files sizes.</p>
@@ -1022,7 +1022,7 @@ But we also need some bash script to collect data through different size of rand
<span class="nb">awk</span> <span class="s1">'/CDC|HUT|ALL/ {print $4,$5}'</span> ~/.ccnet/log/seafile.log <span class="o">&gt;</span> results.stat
</code></pre></div></div>
<h3 id="install-seafile-on-odroid-xu">Install Seafile on odroid xu</h3>
<h4 id="install-seafile-on-odroid-xu">Install Seafile on odroid xu</h4>
<p>Due to failure of my cross-compile to seafile on android. I used develop board as a replacement experiment platform for ARM-seafile testing. I used a <a href="http://www.hardkernel.com/main/products/prdt_info.php?g_code=G137510300620">odroid xu</a> as hardware standard. Because all I need is an ARM platform, only an ARM-Ubuntu is enough for me. But develop prototype on a board is much fun than coding, I wont address much this time. But Ill start a blog telling some really cool stuff I made for a strange aim.</p>
@@ -1044,11 +1044,11 @@ unxz ubuntu-14.04lts-xubuntu-odroid-xu-20140714.img.xz
<span class="nb">sync</span>
</code></pre></div></div>
<h1 id="2016-11">2016-11</h1>
<h2 id="2016-11">2016-11</h2>
<h2 id="android-kernel">Android Kernel</h2>
<h3 id="android-kernel">Android Kernel</h3>
<h3 id="how-to-build-an-android-kernel">How to build an Android Kernel?</h3>
<h4 id="how-to-build-an-android-kernel">How to build an Android Kernel?</h4>
<p>Generally, I wont tell anything in this parts, just mark some related links, and point out some mistakes or error solutions.</p>
@@ -1063,11 +1063,11 @@ unxz ubuntu-14.04lts-xubuntu-odroid-xu-20140714.img.xz
</li>
</ul>
<h1 id="2016-12">2016-12</h1>
<h2 id="2016-12">2016-12</h2>
<h2 id="android-kernel-1">Android Kernel</h2>
<h3 id="android-kernel-1">Android Kernel</h3>
<h3 id="how-to-compile-with-ftrace">How to compile with ftrace?</h3>
<h4 id="how-to-compile-with-ftrace">How to compile with ftrace?</h4>
<p>If we want to debug under android, ftrace is a great tool for working. But, ftrace is not available in android if we used default configure file. Android kernel configuration is in <strong>arch/arm64/kernel/configs</strong>. We need to add few lines under that.</p>
@@ -1082,7 +1082,7 @@ unxz ubuntu-14.04lts-xubuntu-odroid-xu-20140714.img.xz
<span class="nv">CONFIG_STACK_TRACER</span><span class="o">=</span>y
</code></pre></div></div>
<h3 id="how-to-extract-android-images-dump-an-image">How to extract android images: Dump an image</h3>
<h4 id="how-to-extract-android-images-dump-an-image">How to extract android images: Dump an image</h4>
<p>If we want to hold a rooted status after flashing boot, we need to extract an image from android devices. We can first use following command to find which blocks belongs to. According to some references, <a href="http://forum.xda-developers.com/showthread.php?t=2450045">this article</a> provide three ways to dump an image, I picked one for easy using.</p>
+7 -7
View File
@@ -463,7 +463,7 @@ After short checking, I found the node has max_user_watches of 10000, but the To
</li></ul><ul class="right-col menu"><li><i class="fas fa-user"></i> <span>Pengzhan Hao</span></li><li><i class="far fa-calendar-alt"></i> <span>Apr 18, 2024</span>
</li></ul></div><meta itemprop="author" content="Pengzhan Hao"/><meta itemprop="datePublished" content="2024-04-18T16:35:00-04:00">
<meta itemprop="keywords" content="Kubernetes,Kubelet,Debug,Inotify"></div>
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2024-04/Kubelet.webp" /></div><div class="item__content">
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2024-04/kubelet.png" /></div><div class="item__content">
<header><a href="/posts/Debug-kubelet"><h2 itemprop="headline" class="item__header">Debug Kubelet</h2></a></header>
<div class="item__description"><div class="article__content" itemprop="description articleBody">Debug logs
@@ -479,7 +479,7 @@ Like all others programs debugging, the most straightforward way for newbies
</li></ul><ul class="right-col menu"><li><i class="fas fa-user"></i> <span>Pengzhan Hao</span></li><li><i class="far fa-calendar-alt"></i> <span>Apr 10, 2024</span>
</li></ul></div><meta itemprop="author" content="Pengzhan Hao"/><meta itemprop="datePublished" content="2024-04-10T03:34:00-04:00">
<meta itemprop="keywords" content="Kubernetes,Kubelet,Debug"></div>
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2022-02/BU.jpeg" /></div><div class="item__content">
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2024-04/bu.png" /></div><div class="item__content">
<header><a href="/posts/cs350-labs"><h2 itemprop="headline" class="item__header">Labs of CS350</h2></a></header>
<div class="item__description"><div class="article__content" itemprop="description articleBody">This will be a series regarding lab I gave during the spring 2022 semester.
@@ -500,7 +500,7 @@ To help all stud...</div><p><a href="/posts/cs350-labs">Read more</a></p></div><
</li></ul><ul class="right-col menu"><li><i class="fas fa-user"></i> <span>Pengzhan Hao</span></li><li><i class="far fa-calendar-alt"></i> <span>Feb 22, 2022</span>
</li></ul></div><meta itemprop="author" content="Pengzhan Hao"/><meta itemprop="datePublished" content="2022-02-22T16:08:17-05:00">
<meta itemprop="keywords" content="Xv6,Teaching,Operating system,Binghamton university"></div>
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2021-10/f.5_Impl_leader_worker.png" /></div><div class="item__content">
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2024-04/eddl2.png" /></div><div class="item__content">
<header><a href="/posts/eddl-how-do-we-train-on-limited-edge-devices-part2"><h2 itemprop="headline" class="item__header">EDDL: How do we train neural networks on limited edge devices - PART 2</h2></a></header>
<div class="item__description"><div class="article__content" itemprop="description articleBody">In the last post, part1, our idea of distributed learning on edge environment was generally addressed.
I introduced the reason why edge distributed learning is needed and what improvements it can achieve.
@@ -517,7 +517,7 @@ Before designin...</div><p><a href="/posts/eddl-how-do-we-train-on-limited-edge-
</li></ul><ul class="right-col menu"><li><i class="fas fa-user"></i> <span>Pengzhan Hao</span></li><li><i class="far fa-calendar-alt"></i> <span>Oct 31, 2021</span>
</li></ul></div><meta itemprop="author" content="Pengzhan Hao"/><meta itemprop="datePublished" content="2021-10-31T13:01:14-04:00">
<meta itemprop="keywords" content="Research,Edge computing"></div>
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2021-10/edgelearn-1.png" /></div><div class="item__content">
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2024-04/eddl1.png" /></div><div class="item__content">
<header><a href="/posts/eddl-how-do-we-train-on-limited-edge-devices"><h2 itemprop="headline" class="item__header">EDDL: How do we train neural networks on limited edge devices - PART 1</h2></a></header>
<div class="item__description"><div class="article__content" itemprop="description articleBody">This post introduces our previous milestone in project “Edge trainer”, as the paper “EDDL: A Distributed Deep Learning System for Resource-limited Edge Computing Environment.” was published.
As the first part of the introductions, I focus only on the motivation and summary of our works.
@@ -530,7 +530,7 @@ More details in design and implementation can be found in l...</div><p><a href="
</li></ul><ul class="right-col menu"><li><i class="fas fa-user"></i> <span>Pengzhan Hao</span></li><li><i class="far fa-calendar-alt"></i> <span>Oct 13, 2021</span>
</li></ul></div><meta itemprop="author" content="Pengzhan Hao"/><meta itemprop="datePublished" content="2021-10-13T16:53:20-04:00">
<meta itemprop="keywords" content="Research,Edge computing"></div>
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2020-09/2020-06-28.png" /></div><div class="item__content">
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2024-04/wordcloud.png" /></div><div class="item__content">
<header><a href="/posts/generate-word-cloud-with-chinese-fenci"><h2 itemprop="headline" class="item__header">Generate Word Cloud Figures with Chinese-Tokenization and WordCloud python libraries</h2></a></header>
<div class="item__description"><div class="article__content" itemprop="description articleBody">Lets generate a word cloud like this.
Dont understand the language is not a big deal.
@@ -540,7 +540,7 @@ If your written language is based on latin alphabet(or other language has space
</li></ul><ul class="right-col menu"><li><i class="fas fa-user"></i> <span>Pengzhan Hao</span></li><li><i class="far fa-calendar-alt"></i> <span>Sep 15, 2020</span>
</li></ul></div><meta itemprop="author" content="Pengzhan Hao"/><meta itemprop="datePublished" content="2020-09-15T22:00:14-04:00">
<meta itemprop="keywords" content="Visualization"></div>
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2021-10/Xv6_LS_Command_Output.png" /></div><div class="item__content">
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2024-04/xv6.png" /></div><div class="item__content">
<header><a href="/posts/intro-xv6"><h2 itemprop="headline" class="item__header">Xv6 introduction</h2></a></header>
<div class="item__description"><div class="article__content" itemprop="description articleBody">In this post, you will learn a few basic concepts of xv6. Learning path will be closed coupled to first project assignment I gave when I assisted in teaching OS classes.
Understand system call and know how to implement a simple one will be coved as the first half.
@@ -556,7 +556,7 @@ In the second half of this post, I will discuss a little bit more on how to debu
</li></ul><ul class="right-col menu"><li><i class="fas fa-user"></i> <span>Pengzhan Hao</span></li><li><i class="far fa-calendar-alt"></i> <span>Jul 28, 2017</span>
</li></ul></div><meta itemprop="author" content="Pengzhan Hao"/><meta itemprop="datePublished" content="2017-07-28T14:56:55-04:00">
<meta itemprop="keywords" content="Xv6,Teaching,Operating system"></div>
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__content">
</article><article class="item" itemscope itemtype="http://schema.org/BlogPosting"><div class="item__image" style="vertical-align: middle"><img class="image" src="/static/2024-04/research2016.png" /></div><div class="item__content">
<header><a href="/posts/some-of-my-previews-exper-work"><h2 itemprop="headline" class="item__header">Some of my previews experiment works: 2016</h2></a></header>
<div class="item__description"><div class="article__content" itemprop="description articleBody">This blog contains only some basic record of my works. For some details, I will write a unique blog just for some specific topics.</div><p><a href="/posts/some-of-my-previews-exper-work">Read more</a></p></div><div class="article__info clearfix"><ul class="left-col menu"><li>
<a class="button button--secondary button--pill button--sm"
+13 -13
View File
@@ -456,13 +456,13 @@ c13 9 26 20 30 26 7 11 -9 26 -27 26 -5 0 -3 -5 5 -10 9 -6 10 -10 3 -10 -24
<div class="article__content" itemprop="articleBody"><p>This blog contains only some basic record of my works. For some details, I will write a unique blog just for some specific topics.
<!--more--></p>
<h1 id="2016-10">2016-10</h1>
<h2 id="2016-10">2016-10</h2>
<h2 id="time-experiment-of-rsync">Time Experiment of rsync</h2>
<h3 id="time-experiment-of-rsync">Time Experiment of rsync</h3>
<p>Patch is based on rsync with version 3.1.2. [<a href="https://download.samba.org/pub/rsync/rsync-3.1.2.tar.gz">Rsync</a>|<a href="/static/2016-10/rsync/rsync-3.1.2-time.patch">Patch</a>]</p>
<h3 id="how-to-collect-data">How to collect data</h3>
<h4 id="how-to-collect-data">How to collect data</h4>
<p>Basically, everything of transmission time and computation time will be output with overall time will be printed on the console.
But we also need some bash script to collect data through different size of random size and with different modification through them.</p>
@@ -473,11 +473,11 @@ But we also need some bash script to collect data through different size of rand
<li>Start from 8K to 64M, modify at random place with a (slow) python script, [<a href="/static/2016-10/rsync/small2Big_change_at_anyplace.sh">Bash script</a>|<a href="/static/2016-10/rsync/addbyte.py">Python program</a>]</li>
</ul>
<h2 id="time-experiment-of-seafile">Time Experiment of seafile</h2>
<h3 id="time-experiment-of-seafile">Time Experiment of seafile</h3>
<p>Patch is based on seafile 5.1.4. You can find the release from <a href="https://github.com/haiwen/seafile/releases">seafile official repo</a>. You may follow official compile instructions from <a href="https://manual.seafile.com/build_seafile/linux.html">here</a>. [<a href="">Patch <strong>no longer avaiable, new version at following sections</strong></a>]</p>
<h3 id="how-to-collect-data-1">How to collect data</h3>
<h4 id="how-to-collect-data-1">How to collect data</h4>
<p>We also need everything be done using scripting. But this time I only design added some distance between two increasing files sizes.</p>
@@ -493,7 +493,7 @@ But we also need some bash script to collect data through different size of rand
<span class="nb">awk</span> <span class="s1">'/CDC|HUT|ALL/ {print $4,$5}'</span> ~/.ccnet/log/seafile.log <span class="o">&gt;</span> results.stat
</code></pre></div></div>
<h3 id="install-seafile-on-odroid-xu">Install Seafile on odroid xu</h3>
<h4 id="install-seafile-on-odroid-xu">Install Seafile on odroid xu</h4>
<p>Due to failure of my cross-compile to seafile on android. I used develop board as a replacement experiment platform for ARM-seafile testing. I used a <a href="http://www.hardkernel.com/main/products/prdt_info.php?g_code=G137510300620">odroid xu</a> as hardware standard. Because all I need is an ARM platform, only an ARM-Ubuntu is enough for me. But develop prototype on a board is much fun than coding, I wont address much this time. But Ill start a blog telling some really cool stuff I made for a strange aim.</p>
@@ -515,11 +515,11 @@ unxz ubuntu-14.04lts-xubuntu-odroid-xu-20140714.img.xz
<span class="nb">sync</span>
</code></pre></div></div>
<h1 id="2016-11">2016-11</h1>
<h2 id="2016-11">2016-11</h2>
<h2 id="android-kernel">Android Kernel</h2>
<h3 id="android-kernel">Android Kernel</h3>
<h3 id="how-to-build-an-android-kernel">How to build an Android Kernel?</h3>
<h4 id="how-to-build-an-android-kernel">How to build an Android Kernel?</h4>
<p>Generally, I wont tell anything in this parts, just mark some related links, and point out some mistakes or error solutions.</p>
@@ -534,11 +534,11 @@ unxz ubuntu-14.04lts-xubuntu-odroid-xu-20140714.img.xz
</li>
</ul>
<h1 id="2016-12">2016-12</h1>
<h2 id="2016-12">2016-12</h2>
<h2 id="android-kernel-1">Android Kernel</h2>
<h3 id="android-kernel-1">Android Kernel</h3>
<h3 id="how-to-compile-with-ftrace">How to compile with ftrace?</h3>
<h4 id="how-to-compile-with-ftrace">How to compile with ftrace?</h4>
<p>If we want to debug under android, ftrace is a great tool for working. But, ftrace is not available in android if we used default configure file. Android kernel configuration is in <strong>arch/arm64/kernel/configs</strong>. We need to add few lines under that.</p>
@@ -553,7 +553,7 @@ unxz ubuntu-14.04lts-xubuntu-odroid-xu-20140714.img.xz
<span class="nv">CONFIG_STACK_TRACER</span><span class="o">=</span>y
</code></pre></div></div>
<h3 id="how-to-extract-android-images-dump-an-image">How to extract android images: Dump an image</h3>
<h4 id="how-to-extract-android-images-dump-an-image">How to extract android images: Dump an image</h4>
<p>If we want to hold a rooted status after flashing boot, we need to extract an image from android devices. We can first use following command to find which blocks belongs to. According to some references, <a href="http://forum.xda-developers.com/showthread.php?t=2450045">this article</a> provide three ways to dump an image, I picked one for easy using.</p>
Binary file not shown.

After

Width:  |  Height:  |  Size: 359 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 188 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 162 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 497 KiB