LTE IPV6地址配置 ipv6知识点IPV6地址跟IPV4不同,网络中不需要一个单独的服务器来记录哪个地址分配给了哪个设备。他可以通过SLACC地址配置协议来生成地址。下文参考如下两篇文章:https://blog.apnic.net/2019/10/18/how-to-ipv6-neighbor-discovery/IPv6 Stateless Address Auto-configuration (SLAAC)IPV6的地址由两部分组成,如下图其中interface ID是根据一些算法算出来的,每次都会不一样。
arm64 linear mapping线性映射 本文记录线性映射区的 物理地址和虚拟地址是如何转化的前提知识arm64的虚拟地址空间里,线性映射的起始虚拟地址为FFFF 8000 0000 0000。实际有效的虚拟地址为低48位,所以又可以理解为线性映射的起始虚拟地址为8000 0000 0000. 小于这个的地址他的最高位那肯定是0,因此可以通过虚拟地址的最高位来判断这个地址是否属于线性映射区域。PAGE_OFFSET = FFFF 8000 0000 0000memstart_addr = PHYS_OFFSET 是DRAM的实际
内存相关内核知识点 传统的三级页表从上到下分为 PGD,PMD 和 PTE。后面引入了新的PUD( Page Upper Directory)。 PGD 依然保留为顶层的页表,同时将新级别插入在中间,即 PMD 级别的左边或者右边。基于该设计,最顶层都是 PGD,最底层也都是 PTE,...
verizon_lwm2m 转载 https://github.com/yiqingyang2012/verizon_lwm2mverizon_lwm2mverizon lwm2m requirements and sdkwe will add verizon’s requirements and analysis in this repository(4g class3 apn motive test), also i will release a simple demo sdk to debug verizon’s LWM2
Little Kernel boot.img的头部其实就是一个结构体struct boot_img_hdr。从boot分区读取出这个头信息就可以得知kernel的大小kernel应该加载到RAM的哪个地址rootfs的大小rootfs应该加载到SDRAM的哪个地址读出的头部信息还会保存到一个scratch_address的位置,这个位置的定义在apps_proc\bootable\bootloader\lk\target\mdm9607\rules.mkbase address = 0x80000000struct
FOTA升级apply_patch解析 1. 背景本文介绍的是传统的FOTA升级而不是AB系统升级。FOTA升级需要的差分包,其文件格式是zip,文件内容有着固定的格式。解压后在\META-INF\com\google\android目录下存放着两个文件update-binary,是linux下的可执行程序updater-script,属于文本文件updater-script里的内容如下所示apply_patch("/system/firmware/image/mba.mbn", "-", 5ebf32fd
UBI文件系统介绍 & ubi image制作及加载 1. Raw flash 和 FTL devices 的区别在很早以前Linux系统里有一个专门的FTL软件,用来抽象存储设备成为块设备(块设备的定义在下面)。但在现今的很多存储设备里FTL这个功能已经通过硬件实现了,且集成在了存储设备里,这样在liux看来带FTL的设备都是块设备。块设备:whole device is represented as an linear array of (usually 512-byte) blocks. Each block may be read or writt
yocto添加开机启动编译脚本 yocto添加开机启动脚本在平台开发时我们经常会遇到在编译时想让一个程序开机就自动启动,且这个程序必须在依赖的程序启动后才启动。比如等模组拨号成功后才开始FOTA的check。这篇文章将介绍下如何将一个服务程序在一些特定的时候启动下面将以start_manager_server_le为例,他是一个运行脚本,欲控制开机启动的程序为/usr/bin/qmanager_server。start_manager_server_le的内容如下:#! /bin/sh#qmanager_server是你想要
如何手动配置dns服务器地址 linux通过wifi芯片连接热点的操作过程中,当用dhcpcd wla0配置完地址后,如果发现dns功能还是不起作用可以如下操作:dhcpcd -o domain_name_servers -T执行这个命令后会打印很多东西,从里面找到以domain_name_servers 开头的那行,这行里就包含了应该设置的DNS地址。然后将这个地址保存在/etc/resolv.conf文件里,比如:...
android service getContext().getSystemService CarrierConfigManager configManager = (CarrierConfigManager) phone.getContext().getSystemService(Context.CARRIER_CONFIG_SERVICE);通过调用context的get...
tensorflow seq2seq arch 介绍tensorflow的seq2seq API的使用主要包含下面几步: 1、设置helper 训练时的helper和infer时是不同的,分别如下 #这个help主要是用来决定下一步的输入如何生成的。可以用真实word对应的embeding,也可以从上一步的output logits里采样得到一个y(t-1) train_helper = tf.contrib.se...
tensorflow hook架构 介绍所有的hook都继承自SessionRunHook,定义在session_run_hook.py 文件里。其包含五个通用接口:def begin(self)def after_create_session(self, session, coord)def before_run(self, run_context)def after_run(self, run_context,...
tensorflow variable 1.共享变量例一with tf.device('/cpu:0'): with tf.variable_scope('yiqingyang') as sco: w_1 = tf.get_variable(name="w_1",initializer=1.0) print(w_1) tf.get_variable_scope(...
Projected gradient descent 截图来自: Lower bounds & Projected Gradient Descent投影点的性质如果X是一个非空闭凸集且 证明在http://users.ece.utexas.edu/~cmcaram/EE381V_2012F/Lecture_3_Scribe_Notes.final.pdf 一文的proposition 3里distace to a convex set 也就是
residuel network 网络的架构图如下: 一个block由两个卷积层组成,将输出通道数相同的字block层叠在一起组成middle block,然后将不同output channel的middle block层叠在一起组成整个网络。 block分两种:middle block里的第一个block;middle block里的其他block1. middle block里的第一个block;因为不同的middle
copy net 识别target句子中的每个词和源句子中哪些位置的词相同,在返回的cc矩阵里保存位置 返回值 的shape为 [source.shape[0], target.shape[1], source.shape[1]]source.shape[0]:为一个batch里,源句子数;target.shape[1] :每个目标句子的长度source.shape[1]:每个源句子的长度代码如下: