<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chenj_freedom的技术点滴]]></title><description><![CDATA[记录>>>方便后来者>>>]]></description><link>https://blog.youkuaiyun.com/chenj_freedom</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chenj_freedom]]></copyright><item><title><![CDATA[浅尝Appium自动化框架]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/144985191</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/144985191</guid><author>chenj_freedom</author><pubDate>Tue, 07 Jan 2025 14:35:49 +0800</pubDate><description><![CDATA[Appium 是一个开源的自动化测试框架，最初设计用于移动应用的测试，但现在它也扩展了对桌面端应用的支持。Appium 使得自动化测试变得更加简单，并且支持跨平台，能够同时对 iOS、Android、Windows 和 macOS 平台上的应用进行自动化测试。不同于Selenium只是用来自动化测试web程序，Appium可以自动化测试各个平台的原生应用。👉👉👉官网。]]></description><category></category></item><item><title><![CDATA[浅尝Selenium自动化框架]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/144980923</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/144980923</guid><author>chenj_freedom</author><pubDate>Tue, 07 Jan 2025 11:21:07 +0800</pubDate><description><![CDATA[Selenium 是一个开源的自动化测试工具，用于测试 Web 应用程序。它支持多种编程语言（如 Java、Python、C# 等）来编写测试脚本，同时兼容主流的浏览器（如 Chrome、Firefox、Edge 等）。👉👉👉官网官方文档Selenium用来做桌面端（win/mac）上的浏览器web自动化。]]></description><category></category></item><item><title><![CDATA[mac上beyond compare提醒过期的处理方法]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/134775835</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/134775835</guid><author>chenj_freedom</author><pubDate>Mon, 04 Dec 2023 09:32:07 +0800</pubDate><description><![CDATA[beyond comare 4官网本来就有免费版本，只是一些功能有限制，但是对于一般的文件比较，文件夹比较都有支持，所以也够用了。但是在mac端有时候出现还是要输入序列号的情况，估计是bug。删除registry.dat。]]></description><category></category></item><item><title><![CDATA[CentOS 7搭建PPTP]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/129034573</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/129034573</guid><author>chenj_freedom</author><pubDate>Tue, 14 Feb 2023 22:14:59 +0800</pubDate><description><![CDATA[点对点隧道协议（英语：Point to Point Tunneling Protocol，缩写为PPTP）是实现虚拟专用网（VPN）的方式之一。PPTP使用传输控制协议（TCP）创建控制通道来发送控制命令，以及利用通用路由封装（GRE）通道来封装点对点协议（PPP）数据包以发送数据。这个协议最早由微软等厂商主导开发，但因为它的加密方式容易被破解，微软已经不再建议使用这个协议，Mac甚至是已经禁用了PPTP协议。]]></description><category></category></item><item><title><![CDATA[红米AC2100刷openwrt以及刷回官方固件全记录]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/127142242</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/127142242</guid><author>chenj_freedom</author><pubDate>Mon, 03 Oct 2022 14:30:19 +0800</pubDate><description><![CDATA[访问openwrt官网，我们可以知道一些路由器有漏洞，可以刷openwrt固件，做一些自定义操作。我刷openwrt的目的主要是用tc脚本限速，因为我发现路由器本身的限速功能似乎有问题，并不能如你所期地进行限速。刷机就是替换原厂的固件，，boot类似于pc的bios，用于引导系统，通常我们需要刷入不死uboot，防止路由器变砖。刷机的难点在于解锁原厂固件的后台，解锁后就可以随便刷机了。]]></description><category></category></item><item><title><![CDATA[webrtc解读-android硬件编码器Media Codec流程分析]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/127072587</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/127072587</guid><author>chenj_freedom</author><pubDate>Tue, 27 Sep 2022 16:42:49 +0800</pubDate><description><![CDATA[android硬件编码器MediaCodec大致流程分析]]></description><category></category></item><item><title><![CDATA[android开发之adb命令]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/116010519</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/116010519</guid><author>chenj_freedom</author><pubDate>Thu, 22 Apr 2021 13:36:20 +0800</pubDate><description><![CDATA[android开发里最经常使用的就是adb命令。罗列如下：
罗列连接到电脑上的android设备
adb devices 
adb devices -l # 体现更详细的信息


指定操作连接到电脑上的某台android设备
adb -s xxx # xxx就是adb devices获取到的序列号 或者 ip


只要是同一个局域网的，也可以用ip控制。
连接/断开某台android设备
adb connect xxx # xxx为android设备的局域网ip

连接后，就可以默认操作该android设备]]></description><category></category></item><item><title><![CDATA[mac常用软件快捷键收集、触摸屏使用]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/112617931</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/112617931</guid><author>chenj_freedom</author><pubDate>Thu, 14 Jan 2021 16:58:31 +0800</pubDate><description><![CDATA[快捷键
最小化窗口 &gt;&gt;&gt; command + w
退出应用 &gt;&gt;&gt; command + q
锁屏 &gt;&gt;&gt; ctrl + command + q
保存 &gt;&gt;&gt; command + s
复制 &gt;&gt;&gt; command + c
复制粘贴  &gt;&gt;&gt; command + v
剪切粘贴 &gt;&gt;&gt; option + command + v
finder中复制文件的全部路径 &gt;&gt;&gt; ]]></description><category></category></item><item><title><![CDATA[常用代码编辑器/IDE快捷键收集（mac端）]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/112572837</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/112572837</guid><author>chenj_freedom</author><pubDate>Wed, 13 Jan 2021 16:31:22 +0800</pubDate><description><![CDATA[Visual Studio Code
Xcode
Android Studio

]]></description><category></category></item><item><title><![CDATA[多进程通信☞☞☞共享内存]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/110799736</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/110799736</guid><author>chenj_freedom</author><pubDate>Mon, 07 Dec 2020 11:09:56 +0800</pubDate><description><![CDATA[todo

]]></description><category></category></item><item><title><![CDATA[多进程/多线程间通信和同步互斥机制]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/110630535</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/110630535</guid><author>chenj_freedom</author><pubDate>Fri, 04 Dec 2020 15:41:03 +0800</pubDate><description><![CDATA[进程间通信，即 IPC（Inter-Process Communication）。通信其实包含数据传输和信号（事件）通知两大块。
而当“ 数据传输 ” 使用的是共享内存的方式，那么在多进程使用中又必然会涉及到同步和互斥的问题（举个例子：一个进程正在写一块共享内存时，另一个进程同时读取该共享内存，没有同步互斥机制，就可能产生脏数据）。
“ 信号（事件）通知 ” 通俗点讲，就是告诉被通知的进程应该要做什么事了。
下面介绍下多进程间通信常用的一些方式：

管道。&lt;又分为匿名管道（pipe） 和 命名管道（F]]></description><category></category></item><item><title><![CDATA[守护进程的概念和C语言实现]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/109768441</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/109768441</guid><author>chenj_freedom</author><pubDate>Thu, 19 Nov 2020 09:12:08 +0800</pubDate><description><![CDATA[什么是守护进程？
守护进程、前台进程、后台进程的区别？
先聊下前台进程和后台进程的差别。这里写个简单的测试例子。
// gcc -g -O0 test.c -o test

#include &lt;sys/wait.h&gt;
#include &lt;stdint.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;unistd.h&gt;
#include &lt;stdio.h&gt;

int main(int argc, char *argv[])
{
  ]]></description><category></category></item><item><title><![CDATA[多进程的实现和一些理论基础]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/109679269</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/109679269</guid><author>chenj_freedom</author><pubDate>Fri, 13 Nov 2020 18:01:39 +0800</pubDate><description><![CDATA[目录创建子进程
创建子进程
众所周知，要实现多进程，就是用fork函数来创建子进程。下面就从fork函数说起。
先从官网里找到fork函数资料，可以参考：fork()函数官方链接，里面讲得非常详细了，这里提取一些要点出来。
头文件
#include &lt;sys/types.h&gt;
#include &lt;unistd.h&gt;

...]]></description><category></category></item><item><title><![CDATA[网络IO模型]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/109676256</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/109676256</guid><author>chenj_freedom</author><pubDate>Fri, 13 Nov 2020 15:40:50 +0800</pubDate><description><![CDATA[网络IO模型介绍 
常见的IO模型有以下5种： 
1. 阻塞式IO （blocking IO） 
2.无阻塞式IO （nonblocking IO） 
3.IO多路复用 （IO multiplexing） 
4. 信号驱动 （signal driven IO） 
5. 异步IO （asynchronous IO） 
  
阻塞式IO （blocking IO） 
在linux中，默认情况下所有的socket都是bl...]]></description><category></category></item><item><title><![CDATA[耦合与脱耦——深入分析为什么使用pureMVC、接口或抽象基类]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/53642654</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/53642654</guid><author>chenj_freedom</author><pubDate>Fri, 13 Nov 2020 10:42:37 +0800</pubDate><description><![CDATA[转载请注，9ria.com，General_Clarke著。
原文链接：http://bbs.9ria.com/thread-161667-1-1.html



发此帖时已在论坛见过多条希望解释为什么要用MVC框架、为什么要用接口、接口和父类继承有什么区别的帖子
使用上述办法其实目的只有一个——脱耦。
兹专门拿出一篇帖子来，深入说一说耦合与脱耦。
文章不只针对AS，本文对各种三代]]></description><category></category></item><item><title><![CDATA[什么是边缘计算]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/86627196</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/86627196</guid><author>chenj_freedom</author><pubDate>Thu, 24 Jan 2019 15:07:47 +0800</pubDate><description><![CDATA[转载自：https://blog.youkuaiyun.com/gui951753/article/details/80952907
注：本篇翻译自施巍松教授的论文《Edge Computing : Vision and Challenges》
目录


摘要
简介
什么是边缘计算
为什么需要边缘计算
什么是边缘计算
边缘计算的优点


案例研究
云卸载
视频分析
智能家居
智慧城市
边缘协作


机遇和挑战...]]></description><category></category></item><item><title><![CDATA[linux信号机制全解析]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/86518995</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/86518995</guid><author>chenj_freedom</author><pubDate>Thu, 17 Jan 2019 11:32:01 +0800</pubDate><description><![CDATA[在谈linux信号处理函数前，有必要先聊下linux信号的机制。包含信号的作用、信号的产生、信号的阻塞等。
信号机制
信号是linux进程通信的一种方式，很多情况下，信号是由一个错误产生的，通知进程修改行为，但是，也由很大一部分场景是由人为产生信号，通知进程执行某些动作。
信号的产生
信号的产生主要有以下几种情况：

用户在终端（比如：键盘）按下某些按键，终端（键盘）驱动程序会发送信号给前台进程。...]]></description><category></category></item><item><title><![CDATA[linux常用信号列表]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/86489043</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/86489043</guid><author>chenj_freedom</author><pubDate>Tue, 15 Jan 2019 10:55:02 +0800</pubDate><description><![CDATA[转载自：http://blog.sina.com.cn/s/blog_864017a701018vtb.html
Linux下查看支持的信号列表

信号简要说明

信号详细说明


SIGHUP 本信号在用户终端连接(正常或非正常)结束时发出, 通常是在终端的控制进程结束时, 通知同一session内的各个作业, 这时它们与控制终端不再关联.


SIGINT 程序终止(interrupt)信号,...]]></description><category></category></item><item><title><![CDATA[Source Insight 中文注释为乱码解决办法]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/86488440</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/86488440</guid><author>chenj_freedom</author><pubDate>Tue, 15 Jan 2019 10:30:39 +0800</pubDate><description><![CDATA[转载自：https://blog.youkuaiyun.com/bjarnecpp/article/details/70174752
我从网上查了一堆解决办法，但是都是2017年以前的解决方案，并且都是针对于source insight 3.5及以下版本的，目前SI软件版本都到4.0了，应该有新方法出现了。
——————————————————————————————————————
干货：Source In...]]></description><category></category></item><item><title><![CDATA[谈一谈正向代理和反向代理]]></title><link>https://blog.youkuaiyun.com/chenj_freedom/article/details/85291934</link><guid>https://blog.youkuaiyun.com/chenj_freedom/article/details/85291934</guid><author>chenj_freedom</author><pubDate>Thu, 27 Dec 2018 17:02:53 +0800</pubDate><description><![CDATA[转载自：https://blog.youkuaiyun.com/zt15732625878/article/details/78941268
前言
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;小编在公司的技术分享中多次听到正向代理和反向代理，对于Ngnix这一实现反向代理的服务器，是如何工作的呢？下面咱们就一起了解一下。
正文
什么是代理服务器（Proxy Serve）？
&amp;nbsp;&amp;nbsp;&amp;nbs...]]></description><category></category></item></channel></rss>