Neo_Zhang888
码龄6年
关注
提问 私信
  • 博客:24,403
    24,403
    总访问量
  • 41
    原创
  • 2,304,237
    排名
  • 0
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2019-07-16
博客简介:

Neo_Zhang888的博客

查看详细资料
个人成就
  • 获得2次点赞
  • 内容获得0次评论
  • 获得6次收藏
创作历程
  • 42篇
    2019年
成就勋章
TA的专栏
  • 笔记
  • Camx
  • WebKit
    27篇
  • Git
    1篇
  • Chromium
    21篇
  • WLAN
    2篇
  • Tool
    1篇
  • Blink
    14篇
  • Android Application Frameworks
    2篇
  • Linux
    2篇
  • 杂谈
    2篇
创作活动更多

2024 博客之星年度评选报名已开启

博主的专属年度盛宴,一年仅有一次!MAC mini、大疆无人机、华为手表等精美奖品等你来拿!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

chromium多进程架构

这部分是看文档总结的,没有实际读代码render process, 这个是多个blink或者webkit的进程,只是parse, layout浏览器进程,提供network stack和file IO。PLUG IN 的进程GPU 进程render process跟浏览器进程有交互,会给plug in 进程发指令,会通过share memory(gles2.0 instructions或...
原创
发布博客 2019.08.28 ·
285 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

WebKit与Blink工作流程以及显示页面

作为一个Render与Layout引擎,他们的工作步骤1 Parse HTML document,结果是把取到的TAG生成dom的nodes,存到dom tree中,DOM tree就是网页内容的tree。同时, style的数据也是在这里parse的,CSS和in style element。2 根据css和html里面的显示信息,对dom的node创建render tree. render...
原创
发布博客 2019.08.28 ·
463 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

一个完整的浏览器的功能分层

这一部分我不确定从哪里记录的1.The user interface - this includes the address bar, back/forward button, bookmarking menu etc. Every part of the browser display except the main window where you see the requested pag...
原创
发布博客 2019.08.28 ·
595 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android Webkit中,GL是如何执行到paintTextureWithBitmap

01-07 02:13:56.479 2647 2689 D CallStack: Neo callstack#00 pc 00185846 /system/lib/libwebcore.soWebCore::GLUtils::paintTextureWithBitmap(WebCore::TileRenderInfo const*, SkBitmap const&) ext...
原创
发布博客 2019.08.28 ·
228 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

以google 为例,google首页在android WebKit中加载与显示的整体过程

大致的执行过程,忽略了上层android webview部分与net statck加载资源void DocumentLoader::commitLoad(const char* data, int length)frameLoader->client()->committedLoad(this, data, length);void FrameLoaderClientAndroi...
原创
发布博客 2019.08.28 ·
259 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Webkit中, HTML video标签创建renderVideo的过程

11-22 13:37:29.272 2533 2569 D CallStack: Neo callstack#00 pc 002163e6 /system/lib/libwebcore.soRenderVideo external/webkit/Source/WebCore/rendering/RenderVideo.cpp:6511-22 13:37:29.272 2533...
原创
发布博客 2019.08.28 ·
372 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Webkit中video标签(MediaElement)创建mediaplayer的过程

11-22 13:37:15.487 2533 2569 D CallStack: Neo callstack#00 pc 0026396a /system/lib/libwebcore.soWebCore::MediaPlayerPrivate::create(WebCore::MediaPlayer*) /external/webkit/Source/WebKit/android...
原创
发布博客 2019.08.28 ·
466 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Android Browser 在输入url之后,android Framework的Java部分完整的调用过程

//Neo, after input loading uri01-02 00:55:30.001 5178 5178 V TabControl: com.android.browser.TabControl.getCurrentTopWebView(TabControl.java:95)01-02 00:55:30.001 5178 5178 V Tab : com.andro...
原创
发布博客 2019.08.28 ·
237 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android Webkit 的JNI交互

chromium里面JNI的交互应该也类似,但是我忘记具体的,也懒得扒拉代码去找了,但是肯定跑不了System.loadLibrary这一步来加载对应的so,so里面有对应的Java接口。交互交互,就是双向的,java调用native, native调用java的,具体JNI如何实现的,我没有研究,这应该是java虚拟机来负责的。这里只查看两边如何互相建立联系(注册函数),说白了,就是一堆函数指...
原创
发布博客 2019.07.30 ·
200 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

简单回顾中断,IRQ

这里主要谈谈硬件相关的。Interrupt,中断听着很高大上,当年做嵌入的时候,一说发上来个中断刚开始也挺哆嗦的,后来工作中(当然工作也不是那么复杂)发现,基本只有一个原则,快速处理返回,一般就是发个消息就返回。为啥?中断就是硬件告诉CPU,我有个事要告诉你。至于CPU怎么处理这个事,硬件就管不了了。而CPU的事情很多,秒理万机啊,如果为了一个事情耗时太多,那会影响整个系统滴,所以一般来说,CP...
原创
发布博客 2019.07.18 ·
228 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

简单聊聊进程与线程

不管啥系统,基本都有线程与进程的概念,或者整个系统就是一个进程,里面所有的系统都是对应一个个线程,我印象里以前好像有做过这样的。但是无所谓了,基本原理一样的。每个进程都有自己的资源,例如数组啊,变量啊,说白了就是内存,不管是堆的还是栈的内存,这个资源不会与其他进程共享,或者说其他进程不会知道。如果想跟其他进程打招呼,那就要通过操作系统提供的进程间通讯机制来实现。同样的对线程也是,每个线程自己创...
原创
发布博客 2019.07.18 ·
154 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

WLAN on Android Broadcom, QCom

Broadcom方案简单明了Broadcom的gitsvendor/Broadcom/wlan,wlan driver(dhd), it will build wlan.kohardware/Broadcom/wlanProvide firmware binsProvide driver interface for wpa_supplicantProvide libwifi-hal-...
原创
发布博客 2019.07.17 ·
854 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

MediaRouter的使用

这东西有点意思,首先,它不是创建出来的,MediaRouter有一个service,每个app进程是通过给getSystemService(Context.MEDIA_ROUTER_SERVICE); 拿到的一个MediaRouter,说白了就是一个跟MediaRouterService 交互的接口。什么bp, stub之类,不知道现在android这块改进到什么情况了。其次, 通过Media...
原创
发布博客 2019.07.17 ·
3284 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

WML在chromium中实现的补充

忘记了,还有几个小的修改Source/core/editing/Editor.cppbool isSelectionInTextField(const VisibleSelection& selection){HTMLTextFormControlElement* textControl = enclosingTextFormControl(selection.start());...
原创
发布博客 2019.07.17 ·
195 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

在chromium中实现WML的支持

从KK开始,Google开始切换Web引擎了, androd webkit废弃,改为chromium了,但是前面运营商大爷要求的WML咋办?唉,硬着头皮开始把WML往chromium上搞呗.如何搞?采用最笨的方法,HTML相关的类被调用的地方过一遍,加上WML相对应的类。贴出来部分修改的地方,因为本来就是基于opensource的,所以不存在confidential的问题。看到修改的文件,大...
原创
发布博客 2019.07.17 ·
310 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

在Webkit中实现支持WML

Webkit里面,WML作为过时的技术,早已不支持了,但是国内运营商要求必须支持,呵呵,客户要求就是天,再落后也要支持,所以把以前支持WML相关代码全部拿回来,再一点一点适配到新版本上。酸爽,一点一点读代码,debug,终于搞定了。Source/WebCore/css/CSSStyleSelector.cpp// Important: Intrinsic margins get added t...
原创
发布博客 2019.07.17 ·
188 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

WBMP in Chromium

diff --git a/Source/platform/image-decoders/wbmp/WBMPImageDecoder.cpp b/Source/platform/image-decoders/wbmp/WBMPImageDecoder.cppindex a8ee7e6…88131e6 100644— a/Source/platform/image-decoders/wbmp/WB...
原创
发布博客 2019.07.17 ·
409 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Create new lib for Chromium

public class NativeLibraries {public static boolean USE_LINKER = false;public static boolean ENABLE_LINKER_TESTS = false;public static String[] libraries = {};public static final String[] LIBRARIE...
原创
发布博客 2019.07.17 ·
165 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Callstack in chromium

in webkit (blink), add chromium header #include <base/test/test_suite.h>in blink,+#include “wtf/Assertions.h”WTFReportError(FILE, LINE, WTF_PRETTY_FUNCTION, " Neo,data size %d, failed: %d",d...
原创
发布博客 2019.07.17 ·
180 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

HTTP get demo code

HttpClient client = new DefaultHttpClient();HttpGet request = new HttpGet(url);HttpResponse response = client.execute(request);String html = “”;InputStream in = response.getEntity().getContent();...
原创
发布博客 2019.07.16 ·
314 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多