自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(91)
  • 资源 (11)
  • 收藏
  • 关注

原创 鼠标移过来~博客导读:如何省时省力、轻松愉快、心满意足地浏览博客

告诉你怎样根据自己的需要,正确、快速的找到自己感兴趣的内容。

2020-06-10 14:12:21 364

原创 Android:Telephony:全面深入解析RSSI(信号强度、信号格刷新,流量统计)

子:我的安卓又没信号了,奈何?我:仲尼勿忧!本篇全方位解读Android RSSI,贯穿Application、Framework、RIL、QCRIL以及Modem 各大诸侯,助您纵横驰骋列国。子大悦,曰:人而无信(号),不知其可也?

2020-01-07 10:13:15 2049

原创 Android:一篇就够!全面&详细解析APN(涉及内容:GGSN,authtype,MVNO,pdp,Apns-conf,supl,hipri,dun)

全面解析android APN此博文写作坚持以下理念:图胜于表,表胜于言;最好的解释是不用解释;1. APN的概念1.1 APN的定义Definition of Access Point NameIn the GPRS backbone, an Access Point Name (APN) is a reference to a GGSN. To support inter-PLM...

2019-11-25 16:25:47 19035 2

原创 Linux: virtualbox:虚拟机硬盘空间不足的扩容方法——clonemedium命令

modifyhd 不支持VDI格式?没关系,本篇采用“腾鸟换笼”法解决该问题。

2021-03-18 09:51:06 894 1

原创 Ubuntu:已解决:安装18.04后报错:依赖: libc6-armel-cross (>= 2.27) 但是 2.23-0ubuntu3cross1 已经安装

删除有问题的软件包并清除其配置,而不删除依赖项sudo dpkg -P --force-depends libc6-armel-cross libc6-armhf-cross libc6-dev-armel-cross libc6-dev-armhf-cross清理程序包缓存:sudo apt clean更新包装清单:sudo apt update修复损坏的依赖项(应自动安装两个已删除的软件包):sudo apt -f install最后,安装其余两个软件包:sudo apt instal

2021-03-17 15:35:41 2834 1

原创 Linux: C语言使用管道和shell实现自动登录telnet并执行拓扑查询命令

作者:GentlemanTsaohttps://blog.csdn.net/GentelmanTsao业务场景:已有业务逻辑:通过命令行终端可以登录telnet本地服务,并输入指令查询拓扑讯息。例如:telnet 127.0.0.1 7777 # 登录到本地td s2 #子指令,查询拓扑讯息exit #退出telnet现在我们要将上述步骤使用C语言做成一个指令:gettopo。调用gettopo则执行上述操作,提取出关键字串并打印输出。实现方法1.topology.sh脚本首

2020-12-23 14:17:48 1161

原创 Linux:原因及解法warning: suggest parentheses around assignment used as truth value [-Wparentheses]

警告warning: suggest parentheses around assignment used as truth value [-Wparentheses]源代码:while( recv_len = recv(sockfd,&operation,sizeof(operation),0) ){。。。}原因分析:Linux下C语言实现socket通信,报了这个警告。字面意思是,建议给赋值语句加上括号作为真值。上面的代码在语法上没有任何毛病。为什么编译器要做这样的提示?我

2020-12-04 15:32:45 4024

原创 Android:Ethernet:实现RJ45有线网和USB host无线网卡的静态IP(StaticIpConfiguration)设置上网(附源码)

本方案实现了RJ45有线网口和USB host无线网卡的开关、DHCP和静态IP的实时切换,以及静态IP的设置。

2020-11-16 13:42:24 3392 2

原创 异常处理:解决 E: 无法获得锁 /var/lib/dpkg/lock - open ;‘E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?

By:GentlemanTsao文章目录问题现象原因分析解决方法:问题现象Ubuntu使用apt更新软件包时,有时会提示更新失败,并报下面的错误:E: 无法获得锁 /var/lib/dpkg/lock - open ;'E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?原因分析apt在运行时对dpkg加锁,如果在软件包更新的中途异常退出,而apt进程仍然存在,会出现该问题。此时需要手动解锁。解决方法:输入如下指令,解除apt的锁定sudo rm /var/

2020-08-25 14:00:28 223

原创 异常处理:解决Ubuntu用APT指令安装VirtualBox 6.1报错:The following signatures were invalid: BADSIG

作者 | GentlemanTsao文章目录问题描述:问题分析:解决方法:问题描述:使用如下APT指令安装VirtualBox 6.1,sudo apt-get updatesudo apt-get install virtualbox-6.1在update过程中报错:The following signatures were invalid: BADSIG问题分析:提示签名无效,判断是key有问题。解决方法:可以将key删除,重新更新。输入如下指令:# sudo -s -H#

2020-08-14 16:44:20 854

原创 异常处理:解决安装双系统(windows+Ubuntu)的PC,进入windows系统时出现花屏的问题

作者 | GentlemanTsao文章目录问题描述:问题分析解决方法问题描述:某些PC需安装windows和Ubuntu双系统——先安装Windows,后安装Ubuntu。在进入windows系统时常会出现花屏的问题。问题分析进Ubuntu系统的显示是正常的;只有进windows系统会显示花屏。如果是这种情况,判断与显卡驱动有关。在系统启动时会先加载Ubuntu的显卡驱动以用来加载选择系统的界面,致使在选择进入Windows时出现花屏情况。解决方法首先,进入Ubuntu中,打开/et

2020-08-14 13:20:11 1048

原创 Modem2G/3G/4G/5G:RFFE Driver(射频前端驱动):高通平台GRFC配置方法

文 | GentlemanTsao文章目录前言1.什么是GRFC2.GRFC的配置流程概览3.msm_sig_info的配置与分析msm_sig_info Table位置:msm_sig_info Table示例:Table元素解读:rfc_msm_sig_info_type结构体signal typemsm_gpio |grfc_num:GPIO到GRFC的映射output_typefunction_select4._sig_cfg的配置与分析_sig_cfg table位置:_sig_cfg tabl

2020-08-14 10:18:48 4981 2

原创 Modem2G/3G/4G/5G:通信领域常见名词缩写释义(VoLTE,CSFB,CA,RAT...)

By:GentlemanTsao文章目录CA:CSFBVoLTELAAOOSCA:Carrier aggregation,即载波聚合。LTE-Advanced系统引入的一项增加传输带宽的技术。将2~5个LTE成员载波(ComponentCarrier,CC)聚合在一起,实现最大100MHz的传输带宽。CSFBCircuit switched fallback,译为电路域回落。技术背景:LTE网络是全分组交换网络,换句话说,LTE网络不再支持CS(电路域)。而传统语言业务是依赖CS的。因此,

2020-08-07 11:23:00 3493

原创 Modem2G/3G/4G/5G:USIM:高通平台单双卡NV设置(DSDS、DSDA)

NV设置70266DSDA: 2DSDS: 1SINGLE: 04398DSDS: 0Single: 168760000570210dual SIM:hw_config.UIM[0].DISABLE_UIM:FALSEhw_config.UIM[1].DISABLE_UIM: FALSEUIM0 hotswap:根据HW设计UIM1 hotswap:根据HW设计

2020-08-06 16:33:14 2637

原创 Modem2G/3G/4G/5G:解决TDS-CDMA:HSDPA:能注册上call box,但无法连接(Integrity protection not activated)

问题描述:TDS-CDMA:HSDPA测试,能注册上call box,但无法连接,显示idle。log分析:在Down link和up link时都报了下面错误:[0xD0E3/001/005] OTA LOG 00:08:56.724 DCCH UL/Initial DirectTransferRadio Bearer ID: 3, Length: 500x100043004300e3d02931438d06000000

2020-08-06 10:25:31 512

原创 Android:CTS:解决android.carrierapi.cts.CarrierApiTest#testIccExchangeSimIO fail

该条fail case的原因在另一篇中已分析,是同类问题,解法相同。详细参见:Android:CTS:解决android.carrierapi.cts.CarrierApiTest#testIccTransmitApduBasicChannel fail

2020-08-05 09:48:29 640

原创 Android:CTS:解决android.carrierapi.cts.CarrierApiTest#testIccTransmitApduBasicChannel fail

解决 CTS fail:junit.framework.ComparisonFailure: expected:<[90]00> but was:<[6f]00>

2020-08-04 15:09:16 1792

原创 Modem2G/3G/4G/5G:功耗管理:高通平台Thermal架构与配置方法(二):Thermal Engine(涉及SS、monitor算法,DTM)

Thermal 引擎Thermal引擎的代码位置:vendor/qcom/proprietary/thermal-engine/配置方法:在thermal-engine.conf中配置thermal rules。该文件默认是空的,可以添加自定义rules,例如添加一个CPU0 的rules:[CPU0_MONITOR]algo_type monitorsensor cpu0sampling 1000thresholds 9000

2020-08-03 10:25:42 2522 3

原创 Modem2G/3G/4G/5G:功耗管理:高通Thermal架构与配置方法(一):Thermal Zone与Cooling Device

Thermal框架概览认识thermal sysfsThermal sysfs是UE中的文件节点,暴露了thermalsensor,可以通过adb读取和修改。在UE的/sys/class/thermal目录下查看,可以得到cooling_device和thermal zone列表,如下所示:每个cooling_device都有自己的类型(type),以区分其他device。我们可以cat cooling_device11 ~14,看到这几个属于modem,依次对应于:PAModem pro

2020-07-29 10:34:52 3469

原创 Modem2G/3G/4G/5G:吐血总结:30分钟掌握高通modem RFFE driver(射频驱动)配置方法(一)

紧急任务你是一位电子厨师,接到指挥官下达的紧急任务,要求在30分钟内为R星居民做出美食,否则R星将可能发生饥荒。R星人以电磁波为食。随即你收到了总部发来的美食图谱,如下:

2020-07-27 09:33:12 4863 4

翻译 2020版Java并发和多线程教程(二十九):非阻塞算法(非阻塞并发数据结构、比较交换、乐观锁、共享意向修改、ABA问题、非阻塞算法模板)

并发中所谓的非阻塞算法是允许线程访问共享状态(或以其他方式进行协作或通信)而不会阻塞所涉及线程的算法。 更笼统地说,如果一个线程的挂起不会导致该算法中涉及的其他线程挂起,则该算法称为非阻塞算法。为了更好地理解阻塞和非阻塞并发算法之间的区别,我将首先说明阻塞算法,接着再说明非阻塞算法。阻塞并发算法...

2020-07-17 18:06:32 288

翻译 Java函数式编程教程(五):Java Steam API

Java Stream API提供了一种处理对象集合的函数式方法。 Java Stream API是在Java 8中添加的,同时还具有其他一些函数式编程功能。 本Java Stream教程将解释这些函数式流的工作方式以及使用方法。

2020-07-07 09:34:18 758

原创 码农:编程指数10年没涨啊,我被严重低估了!码交所:我编制了新的学习方法,你们满意吗?

面试造火箭,工作拧螺丝?不怕,用分裂学习法;只顾埋头拉车,忘了抬头看路?勿忧,还有螃蟹学习法~

2020-07-03 16:39:58 287

翻译 Java函数式编程教程(四):Java函数式组合

函数式组合是一种将多个函数组合为单个函数的技术,该函数在内部使用组合函数。 你可以自己将单个函数(通常是一个或多个Java Lambda表达式)组合为一个函数,但是Java还内置了对函数组合的内置支持,使你的工作更轻松。 在此Java函数式组合教程中,我将说明如何自己通过较小的函数以及通过Java的内置功能来组成函数。Java函数式组合示例首先,让我向你展示Java函数式组合的示例。 这是由其他两个函数组成的单个函数:Predicate<String> startsWithA = (tex

2020-06-27 17:12:28 582

翻译 Java函数式编程教程(三):Java函数式接口(Function Predicate UnaryOperator BinaryOperator Supplier Consumer)

翻译:GentlemanTsao,Java函数式接口一词是在Java 8中引入的。Java中的函数式接口是仅包含一个抽象(未实现)方法的接口。 除了单个未实现的方法外,函数式接口还可以包含已实现的默认方法和静态方法。下面是一个Java函数式接口示例:public interface MyFunctionalInterface { public void execute();}上面的代码被视为Java中的函数式接口,因为它仅包含一个方法,并且该方法没有实现。 通常,Java接口不包含其声明的

2020-06-24 13:18:32 445

翻译 Java函数式编程教程(二):Java高阶函数(排序集合,反向排序)

翻译:GentlemanTsao高阶函数是将函数(方法)作为参数,或者在执行后返回函数的函数。 在这个高阶教程中,我将展示一些Java中高阶函数的示例。排序集合高阶函数的第一个示例是Collections.sort()方法,该方法将Comparator作为参数。 这是一个例子:List<String> list = new ArrayList<>();list.add("One");list.add("Abc");list.add("BCD");Collection

2020-06-24 09:38:29 575

翻译 Java函数式编程教程(一):序章,函数式编程来了

翻译:GentlemanTsao, 2020-06-23函数式编程基础知识;函数作为第一等对象;纯函数;高阶函数;无状态;无副作用;不可变变量;递归优先于循环;函数式接口;

2020-06-23 10:11:24 346

原创 Android: APN: 3UK APN roaming客制,如何让APN随网络漫游而切换(EUinternet)?

By:GentlemanTsao文章目录背景:要求行为:菜单:实现方案:静态切换:动态切换:关键源代码1.随菜单设置切换APN2. 随网络漫游状态动态切换APN背景:3UK 希望在漫游的时候,APN 能够从 local 切换到 common,也就是从自己的 APN 切换到 一个通用的 APN。这项被称为 LBO 的 feature ,即欧洲的运营商都要支持该通用 APN。要求行为:在本地网络,要使用 3UK 本地 APN;处于漫游时,使用 EUInternet APN,不再从 3UK 接入

2020-06-22 14:48:29 656

原创 Modem2G/3G/4G/5G:APN:使用AT+CGDCONT命令设置modem默认APN(CID1)

AT+CGDCONT可以用于查看或修改APNat+cgdcont?CGDCONT: 1,“IPV4V6”,“internet”,“0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”,0,0,0,0 ★APN Name “internet”CGDCONT: 2,“IPV6”,“ims”,“0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”,0,0,0,0CGDCONT: 3,“IPV4V6”,“sos”,“0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”

2020-06-22 13:34:35 11041 2

原创 Modem2G/3G/4G/5G:解决设备连接高通QPST工具(例如QXDM抓log)没有端口(diag口)问题

文章目录问题描述生效条件解决方法Q&A问题描述使用QXDM抓log需要用到设备的diag口,但很多版本的diag口并没有开放,这会导致打开QXDM后,看不到设备的端口,无法正常连接。没有diag口的可能原因比较多,其中有些是无法开启的,例如版本打开了secure boot并封闭了diag。生效条件下面的方法的前提是:设备是userdebug版本或可以root。解决方法连接USB cable并键入指令:

2020-06-19 17:54:53 6246 2

原创 Modem2G/3G/4G/5G:完整收录,2020最新MCC、MNC、运营商对照表,全球运营商MCCMNC查询列表

说明:列表元素结构{MCC, MNC, 制式,简称,全称}制式:GSM_900:2GDCS_1800:2GUMTS:3GLTE:4G列表:{202, 1, MMGSDI_PLMN_NETWK_TYPE_GSM_900_MASK|MMGSDI_PLMN_NETWK_TYPE_DCS_1800_MASK|MMGSDI_PLMN_NETWK_TYPE_UMTS_MASK, “C-OTE”, “GR COSMOTE”, TRUE},{202, 5, MMGSDI_PLMN_NETWK

2020-06-17 10:59:28 16053

原创 Modem2G/3G/4G/5G:CBS:NCC认证:高通平台通过MBN控制Cell Broadcast Service(CBS)(有操作动画)

By:GentlemanTsao文章目录Background:Evaluation:Solution Details:Operations:Background:台湾的NCC认证,对cell broadcast message(CBS) channel有客制要求。具体为:当插入台湾运营商SIM,开启CBS,channel list如下Evaluation:1.CBS channel list可以预设到modem BIN中2.CBS的开关的依据是不同的SIM卡,评估此需求,采用新增CBS M

2020-06-15 16:56:12 1569

翻译 2020版Java并发和多线程教程(三十):终章:阿姆达尔定律(Amdahl‘s Law)

终章:阿姆达尔定律。《Java并发和多线程教程》翻译终于填坑了。

2020-06-15 12:41:20 345

翻译 2020版Java并发和多线程教程(二十八):同步器的结构

本篇归纳了同步器的共性结构,包括:状态;访问条件;状态改变;通知策略;检查并设置方法;设置方法;

2020-06-13 06:44:55 224

原创 Modem2G/3G/4G/5G:高通Policy Manager(概述,优势,架构与API,配置与debug方法)

By:GentlemanTsao本篇主要介绍1 Policy Manager概述2 为什么使用policy manager弱耦合:方便修改:动态配置:3 policy manager架构与API3.1 policy manager包括两部分:3.2 上层架构:3.3 Policy生效过程4 如何修改Policyman XML4.1 Policyman包含的XML文件4.2 三种类型:Lists, booleans, and timersListBooleansTimers4.3 Policyman XML

2020-06-12 11:11:13 2916

翻译 2020版Java并发和多线程教程(二十七):比较交换(CAS)

比较交换是设计并发算法时使用的一种技术。 基本上,比较交换将期望值与变量的实际值进行比较,如果变量的实际值等于期望值,则将变量的值替换为新的值。 比较交换听起来可能有点复杂,但是一旦你理解了它,实际上就相当简单了,所以让我对这个话题做进一步的阐述。哪些情况需要用到比较交换在程序和并发算法中,一种常会出现的模式是“先检查后行动”模式。 当代码首先检查变量的值,然后根据该值进行操作时,将出现检查然后操作模式。 这是一个简单的示例:...

2020-06-11 21:16:55 259

翻译 2020版Java并发和多线程教程(二十六):线程池(Thread Pool)

当需要限制应用程序中同时运行的线程数时,线程池很有用。 启动新线程会带来性能开销,并且每个线程还为其栈等分配了一些内存。与其为每个并发执行的任务启动新线程,不如将任务传递给线程池。 一旦池中有任何空闲线程,就会将任务分配给其中一个并执行。 内部实现为将任务插入到阻塞队列中,线程池中的线程从该队列中取出。 当一个新任务插入到队列后,其中一个空闲线程将它从队列中出队并执行它。 线程池中的其余空闲线程将被阻塞,等待任务出队。线程池通常用于多线程服务器中。 通过网络到达服务器的每个连接都被包装为一个任务,并传递

2020-06-10 09:34:06 255

翻译 2020版Java并发和多线程教程(二十五):阻塞队列

阻塞队列是这样一个队列,当尝试在队列为空时出队,或者尝试在队列已满时入队,它将阻塞。 尝试从空队列中出队的线程将被阻塞,直到其他线程插入一项到队列中为止。 尝试使一个项目进入满队列的线程将被阻塞,直到某个其他线程在队列中腾出空间为止,方法是使一个或多个项目出队或完全清除队列。下面的示意图显示两个线程通过阻塞队列进行协作:Java 5在java.util.concurrent包中附带了阻塞队列实现。 可以在我的java.util.concurrent.BlockingQueue教程中了解该类。 即使Ja

2020-06-09 07:15:23 185

翻译 2020版Java并发和多线程教程(二十四):信号量(Semaphores,计数信号量,有界信号量,信号量用作锁)

翻译:GentlemanTsao,2020-06-08;简单的信号量;使用信号量传递信号;计数信号量;有界信号量;将信号量用作锁

2020-06-08 21:18:25 279

翻译 2020版Java并发和多线程教程(二十三):重入锁死

重入锁死是一种类似于死锁和嵌套管程锁死的情况。 重入锁死在“锁”和“读/写锁”一文中也有涉及。如果线程重新进入Lock,ReadWriteLock或其他不可重入的同步器,则可能会发生重入锁死。 可重入是指已持有锁的线程可以重新获取该锁。 Java的同步块是可重入的。 因此,以下代码可以正常工作:public class Reentrant{ public synchronized outer(){ inner(); } public synchronized inner(){

2020-06-07 09:50:33 227

android开发环境集成安装包_ubuntu16_04

一键安装android开发环境。 适用操作系统:ubuntu 16.04. 集成了如下部分: deb工具; make工具; 编译相关:gcc、g++\ openjdk7\openjdk8,编译依赖包 wine; 虚拟机virtualbox; 比较工具beyond compare; adb驱动; teamviewer; 使用方法: 运行android.sh ./android.sh 然后根据提示安装你想要的部分。

2021-08-06

计算机专业课件_微机原理

7章课程。 内容翔实,深入浅出,不容错过。

2021-08-05

计算机专业课件_通信原理

10节ppt课程,外加习题。 适合软件和通信从业者。

2021-08-05

计算机专业课件_软件工程讲稿

包含12节课程ppt,外加近20个实例。 适合所有软件从业者学习、温习、参考。

2021-08-05

计算机专业课件_计算机系统结构

9节课程,外加习题和一本教材。 计算机专业核心课程。

2021-08-05

计算机专业课件_计算机网络

共6章doc讲义,外加习题。 计算机、通信基础课程,适合入门学习。

2021-08-05

计算机专业课件_电子商务,适合爱钱人士

共10节课程。 电子商务入门教材。 本课程通俗易懂,带你找回学习的快乐!

2021-08-05

计算机专业课件_操作系统(英文),适合需要巩固基础的软件开发者

包含14节课程,外加习题。 操作系统是计算机、软件专业的核心课程。 课程有难度,下载需谨慎!

2021-08-05

计算机专业人工智能与机器人课件.zip

包含人工智能12课时;机器人3课时

2021-08-05

RJ45_USBhost_StaticIP.rar

Android的network interface中提供了Ethernet和USB host网口的支持,但仅实现了DHCP(动态IP分配)。若用户希望使用自定义IP(即StaticIpConfiguration)上网,则需要采用本方案。 本方案实现了RJ45有线网口和USB host无线网卡的开关、DHCP和静态IP的实时切换,以及静态IP的设置。 本资源的作者为GentlemanTsao,可任意下载使用~

2020-11-16

ethernetStaticIP_patch.zip

本资源是源码patch,实现了Android系统的静态IP联网。源码作者为本人。源码简介:Android设备可以通过网线的RJ45硬件接口访问互联网。接入网线之后,设备可以动 态的获取IP,DNS,Gateway等一系列网络参数,我们也可以手动配置设备的网络参数,使用静态IP参 数。Google已经有一套现成的机制使用有线网,但没有涉及有线网的参数配置。因而静态IP的配置需自行实现。

2020-08-07

空空如也

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

TA关注的人

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