内存
用户空间与内核空间 现代的操作系统都引入的虚拟内存概念。 操作系统的核心是内核,独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限。为了保证用户进程不能直接操作内核,保证内核的安全,操作系统将虚拟内存划分为两部分,用户空间和内核空间。 将最高的 1G 字节(从虚拟地址 0xC0000000 到 0xFFFFFFFF),供内核使用,称为内核空间,而将...
用户空间与内核空间 现代的操作系统都引入的虚拟内存概念。 操作系统的核心是内核,独立于普通的应用程序,可以访问受保护的内存空间,也有访问底层硬件设备的所有权限。为了保证用户进程不能直接操作内核,保证内核的安全,操作系统将虚拟内存划分为两部分,用户空间和内核空间。 将最高的 1G 字节(从虚拟地址 0xC0000000 到 0xFFFFFFFF),供内核使用,称为内核空间,而将...
IO 基础 文件描述符(File Descriptor FD) 计算机科学中的一个术语,是一个用于表述指向文件的引用的抽象化概念。文件描述符在形式上是一个非负整数。实际上,它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符。 Linux 的设计思想:一切皆文件(不仅仅是磁盘文件,也有可能是内存文...
面向对象 面向对象概念 面向对象编程就是,” 把一组数据结构和处理它们的方法组成对象(object),把相同行为的对象归纳为类(class),通过类的封装(encapsulation)隐藏内部细节,通过继承(inheritance)实现类的特化(specialization)和泛化(generalization),通过多态(polymorphism)实现基于对象类型的动态分派。”真正让软...
进制互转 十进制转二、八、十六进制 public static void decimalTo(int num) { System.out.println("十进制:" + num); String s = Integer.toBinaryString(num); String s1 = Integer.toOctalString(num); String ...
BASE64 Base64 是网络上最常见的用于传输 8Bit 字节代码的编码方式之一,大家可以查看 RFC2045~RFC2049,上面有 MIME 的详细规范。Base64 编码可用于在 HTTP 环境下传递较长的标识信息。例如,在 Java Persistence 系统 Hibernate 中,就采用了 Base64 来将一个较长的唯一 标识符 (一般为 128-bit 的 UUID...
字符编码 字符编码介绍 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用 8 个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是 255(二进制 11111111=十进制 255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是 65535,4 个字节可以表示的最大整数是 42949...
原码反码补码定义 小结 正数的原码、反码、补码都一样 负数的反码是原码符号位不变,其他位取反;负数的补码是反码 +1 补码变原码 (仅针对负数):符号位保持不变,从后往前开始,保持第一个 1 不变,后面的按位取反,直到符号位 机器数和真值 机器数 一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为 0...
加密介绍 密码的常用术语 明文:待加密的信息密文:经过加密后的明文加密:明文转为密文的过程加密算法:明文转为密文的转换算法加密密钥:通过加密算法进行加密操作用的密钥解密:将密文转为明文的过程解密算法:密文转为明文的算法解密密钥:通过解密算法进行解密操作用的密钥密码分析:截获密文者试图通过分析截获的密文从而推断出原来的明文或密钥的过程主动攻击:攻击者非法入侵密码系统,采用伪造、修改、删除等...
Data Binding Library 官方文档 databinding-samples codelabs android-databinding Data Binding 基本使用 什么是 DataBinding? DataBinding 是 Google 在 Jetpack 中推出的一款数据绑定的支持库,利用该库可以实现在页面组件中直接绑定应用程序的数据源。使其维护...
DataBinding 原理 编译阶段 以activity_test5.xml为例: <?xml version="1.0" encoding="utf-8"?> <layout xmlns:android="http://schemas.android.com/apk/res/android"> <data> <variable ...