- 博客(19)
- 收藏
- 关注

原创 Spring原理解析-BeanFactory---容器加载过程解析
Spring的IOC容器---BeanFactory---容器加载过程解析容器加载DefaultListableBeanFactory类介绍BeanFactory接口介绍BeanDefinition接口介绍BeanDefinitionRegistry接口介绍如何解析xml文件容器加载DefaultListableBeanFactory类介绍 DefaultListableBeanFacto...
2020-04-01 11:08:03
1482
1
原创 操作系统原理---文件管理
文件系统是什么 文件系统是磁盘的一个抽象,让用户对磁盘的操作变得容易。文件系统为用户提供了对文件操作的接口,屏蔽了内部复杂的实现细节,让用户不用关心文件在磁盘中的存储位置,组织形式,用户对文件进行访问只需要给出文件名和路径名即可,无需知道磁柱、磁道、扇面、数据块等信息。将用户从数据复杂的存储细节中解放出来。文件系统的作用就是用来存取,组织文件的。为什么需要文件系统屏蔽底层复杂性:对磁盘数据访问是十分复杂的,不仅需要知道数据的物理地址,还需要操作磁盘读取指定数据,然后再组装数据等,如果这些工作交给软
2020-05-11 18:12:40
771
原创 内存映射文件原理
内存映射文件内存映射文件与虚拟内存的区别映射原理mmap() 函数mmap基础概念mmap映射原理mmap优点mmap相关函数内存映射文件与虚拟内存的区别 内存映射文件是由操作系统支持的一种文件处理方式,通过文件映射,让用户处理磁盘文件时就如同操作内存一样。再处理大文件时,效率比传统IO高很多。 虚拟内存和内存映射文件都是将一部分文件加载到内存,另一部分文件保存在磁盘上的一种机制。但是二者是有区别的:架构不同,虚拟内存是构建在物理内存之上的,引入原因是实际物理内存无法满足程序所需的内存空间;内
2020-05-11 17:55:44
2041
原创 操作系统原理---进程管理
处理机管理 处理机是用来解释、执行指令的单元。程序是一段实现某个功能的指令序列,这些指令都是在处理机上解释、执行。处理机包括中央处理器,主存和输入输出接口。 处理机是操作系统的核心资源,处理机管理时操作系统的核心功能,是为在多道程序系统中,提高处理机的使用效率。处理机管理好坏直接决定多道程序操作系统的性能。 进程是处理机管理中最基本最核心的概念。在多道程序系统中,多道程序并发争夺处理机,为了方便处理,将进程作为独立运行的基本单位,进程是资源分配的基本单位。从进程的角度看,处理机管理就是对这些进程
2020-05-09 18:36:57
1215
原创 操作系统原理---管程
管程机制 将共享变量及操作共享变量的所有方法封装在一个模块中。管程组成一组局部变量(共享变量)操作局部变量的一组方法局部变量的初始语句管程的特点任何进程只能通过管程提供的入口才能访问共享数据任何时刻只允许一个进程访问管程的某个方法管程如何实现同步控制对共享变量的互斥操作: 管程的特点决定了对共享资源的互斥操作,管程同一时刻只允许一个进程对共享资源进行操作操作的同步控制: 管程通过条件变量实现同步控制,管程同一时刻只允许一个进程获得操作权,没有获得操作权的进程将阻塞在
2020-05-09 17:03:24
809
原创 快速幂算法
求解a^n后三位 该题目即为求解(a^n)%1000, 在求 a的n次方式为了加快运算使用快速幂算法public static int fastPower(int a, int n){ int res = 1; int base = a; while (n != 0){ if ((n&1) == 1){ res *= base; } base
2020-05-09 10:51:58
349
原创 浅谈poll/select epoll的区别
poll/setect,epoll三个命令都是属于内核方法,是内核实现用一个线程监听多个连接的方法,其中epoll是Linux2.6之后引入的一种高效的连接事件监听机制。select原理  select方法是将文件描述符数组从用户控件传入内核空间,内核通过轮询的方式查看所有连接,如何循环一次没有连接事件到底则等待,事件到达后返回。返回之后客户端需要遍历怎个数组,找出产生事件的连接。同时select默认监听的连接数为1024poll原理 poll方法与select方法类似,只不
2020-05-08 19:35:29
241
原创 java nio---wakeup实现原理
我们都知道select()方法是阻塞的,只有在注册的channel有事件发生时才会返回,但是如果程序需要立即返回怎么办呢,这你就涉及到一个wakeup()方法。该方法的作用就是让select()方法返回。 首先来看一下WindowsSelectorImpl对象的初始化过程//在加载WindowsSelectorImpl类时创建一个管道private final Pipe wakeup...
2020-04-16 21:31:24
521
原创 java nio---WindowsSelectorImpl类详解
WindowsSelectorImpl是Java nio 基于windows操作系统的基础类,这篇文章主要讲解两个方法:doSelect(long var1)和implRegister(SelectionKeyImpl var1)WindowsSelectorImpl属性介绍:private final int INIT_CAP = 8; //每个线程处理channel的数量 ...
2020-04-16 18:03:54
1093
原创 java Nio通道注册源码分析
AbstractSelectableChannel#register(Selector sel, int ops, Object att)public final SelectionKey register(Selector sel, int ops, Object att) throws Closed...
2020-04-15 11:56:05
219
原创 IO模型详解
IO模型分类同步与异步IO: 同步与异步是指用户空间和内核空间调用发起方式。同步IO是由用户空间发起的,内核空间被动接受;异步IO是内核空间发起的,用户空间被动接受。阻塞与非阻塞: 阻塞与非阻塞是指在执行io操作期间,用户程序的状态。用户程序执行阻塞IO时会一直阻塞,知道内核空间准备好数据、将数据从内核空间复制到用户空间两个步骤都完成后才返回;用户进程执行费阻塞IO时,程序并不...
2020-04-14 21:17:32
145
原创 cglib动态代理分析
cglib动态代理原理代理对象源码分析#cglib动态代理使用流程创建被代理对象public class UserService { public void say(){ System.out.println("我是一位用户"); }}实现MethodInterceptor接口,在接口方法中增强被代理方法的功能:public class My...
2020-04-06 20:57:40
529
原创 jdk动态代理源码分析
JDK动态代理 jdk动态代理是基于接口的,也就是说被代理的类必须实现某个接口。接下来详细介绍一下jdk动态代理使用流程实现InvocationHandler接口 InvocationHandler接口中只有一个接口方法invoke(Object proxy, Method method, Object[] args)。 proxy:代理对象 method:被代理方法 ...
2020-04-06 16:33:15
131
原创 spring---@Autowired依赖注入原理
@Autowired依赖注入原理@Autowired注解介绍核心类AutowiredAnnotationBeanPostProcessor@Autowired注解介绍 @Autowired是基于注解的依赖注入的核心注解,它的存在是可以让容器知道该为当前类注入哪些依赖。@Autowired注解是按照类型匹配进行依赖注入的,当容器中有多个类型的实例时,可以使用@Qualifier注解来根据名称匹...
2020-04-05 12:53:54
1448
原创 Spring---事件发布
spring事件发布机制如何在spring框架中使用监听机制spring监听器原理容器默认事件发布者类SimpleApplicationEventMulticaster 这篇文章主要是讲解spring的事务发布机制,也顺带讲一些ApplicationContest容器启动过程。Spring事件发布机制是基于观察者模式的。其实现类图如下: 如上图所示,抽象类AbstractApplicat...
2020-04-03 17:13:13
363
原创 spring---bean的一生
bean的生命周期详解Bean实例化过程图实例化bean对象 beanFactory容器启动之后,首先解析配置文件,生成并注册beanDefinition对象。beanDefinition包含了bean的实例化阶段所必需的信息。只有通过getBean方法来获取某个对象的实例使,容器才实例化这个对象。这一点更ApplicationContext容器不同,在getBean方法调用之前就将所有的类实...
2020-04-02 10:38:50
124
原创 Spring原理解析-BeanFactoryPostProcessor后置处理器
BeanFactoryPostProcessor后置处理器BeanFactoryPostProcessor接口功能后置处理器的应用场景BeanFactoryPostProcessor接口功能 上一篇文章讲解了如何解析配置文件生成BeanDefinition对象,如感性趣,欢迎阅读Spring的IOC容器—BeanFactory—容器加载过程解析,那么获得beanDefinition对象之后,...
2020-04-01 14:43:12
203
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人