小万哥 小万哥
1年前
掌握 C++ 编译过程:面试中常见问题解析
C编译过程C是一种高级编程语言,但是计算机并不能直接理解它。因此,需要将C代码翻译成计算机可以理解的机器语言。这个过程就是编译过程,是C程序从源代码到可执行文件的转换过程,包括预处理、编译、汇编和链接四个阶段。1.预处理在编译器开始编译之前
刘望舒 刘望舒
4年前
Android系统启动流程(一)解析init进程启动过程
作为“Android框架层”这个大系列中的第一个系列,我们首先要了解的是Android系统启动流程,在这个流程中会涉及到很多重要的知识点,这个系列我们就来一一讲解它们,这一篇我们就来学习init进程。"tag:Android框架层Android系统启动categories:Android框架层本文首发于微信公众号「刘望舒」
刘望舒 刘望舒
4年前
Android解析WindowManager(一)WindowManager体系
Android框架层Android系统服务WindowManagercategories:Android框架层本文首发于微信公众号「刘望舒」前言WindowManagerService(WMS)和AMS一样,都是Android开发需要掌握的知识点,同样的,WMS也很复杂,需要多篇文章来进行讲解,为何更好的理解WMS,首先要了解WindowManage
Stella981 Stella981
3年前
Android系统四层架构分享
Android系统四层架构个人网站:http://www.51pansou.com(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.51pansou.com)Android视频下载:Android视频(https://www.oschina.
Stella981 Stella981
3年前
Activity Lifecycle
官方介绍网址:http://developer.android.com/reference/android/app/Activity.html(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fdeveloper.android.com%2Freference%2Fandroid%2Fapp
Stella981 Stella981
3年前
Android之ClassLoader和插件
Android之ClassLoader和插件Android中的ClassLoader本质上跟JRE中的一样,但Android的字节码格式不一样,Android下的ClassLoader不能直接加载普通的jar包,需要使用dex2jar工具中的d2jjar2dex.bat,  把jar转换为classe
Stella981 Stella981
3年前
Android Wear 2.0 AlarmManager 后台定时任务
以前在Android4.0时,alarmManager没什么问题。后来android为了优化系统耗电情况,引入了doze模式,参见此页https://developer.android.com/training/monitoringdevicestate/dozestandby(https://www.oschina.net/action/
Stella981 Stella981
3年前
JIT与JVM的三种执行模式:解释模式、编译模式、混合模式
JavaJIT(justintime)即时编译器是sun公司采用了hotspot虚拟机取代其开发的classicvm之后引入的一项技术,目的在于提高java程序的性能,改变人们“java比C/C慢很多”这一尴尬印象。说起来是编译器,但此编译器与通常说的javac那个编译器不同,它其实是将字节码编译为硬件可执行的机器码的。!(https
Stella981 Stella981
3年前
Golang的项目目录结构
1.简单型的项目目录结构如果我们只是开发一个小应用或者做一些简单的测试,那么完全没有必要根据官方的建议建立各种目录,只需要要一个文件夹中放置我们的源码文件,然后直接运行gobuild就可以,例如:gobuildhello.go然后编译器就会在当前目录下面生成一个hello.exe文件。我们
Stella981 Stella981
3年前
JIT中的LogCompilation
点击上方的蓝字关注我吧_程序那些事_!(https://oscimg.oschina.net/oscnet/44ef0e63779c4e03b1b7564c7679147435c.gif)简介我们知道在JVM中为了加快编译速度,引入了JIT即时编译的功能。那么JIT什么时候开始编译的,又是怎么编译的,作为一