BichonCode BichonCode
4年前
操作系统
一、进程的相关概念1.1定义进程用来描述一个程序及其执行过程中的信息,即描述一个执行中的程序,所以才将其命名为进程,即进行中的程序,也可以说进程是程序的一次执行。1.2进程的状态操作系统中的进程状态主要包括∶运行态——当前占有CPU、正在执行的进程状态;就绪态——一个进程具备了所有可以执行的条件,只要获得CPU就能开始执
Wesley13 Wesley13
3年前
Unity面试整理
1  什么是DrawCall,有什么方法可以减少DrawCall  drawcall是啥?其实就是对底层图形程序(比如:OpenGLES)接口的调用,以在屏幕上画出东西。 在每次调用DrawCall之前,CPU需要向GPU
Easter79 Easter79
3年前
String.intern()引发的性能问题
项目代码中用到反射,伴随大量的NoSuchFieldException异常,发现cpu飙高,排查后发现跟String.intern有关。在Class中有连个常见的方法:Ø public Field getField(String name)Ø getMethod(String name, Class<?... parameterTypes)
Wesley13 Wesley13
3年前
NGINX 详细配置信息
运行用户usernobody;启动进程,通常设置成和cpu的数量相等worker_processes1;全局错误日志及PID文件error_loglogs/error.log;error_loglogs/error.lognotice;err
Easter79 Easter79
3年前
Spring的基本应用(1):IDEA版本
一、Spring概述:1.什么是Spring?Spring是分层的JavaSE/EE应用fullstack(一站式)轻量级开源框架,以IoC(InverseOfControl:控制反转)和AoP(AspectOrientedPrograming,面向切面编程)为内核,提供了展现层SpringMVC和持久层Spring
Wesley13 Wesley13
3年前
Java多线程(一)、理解进程与多线程的概念及关系
一、什么是进程?简单理解,在多任务系统中,每个独立运行的程序就是一个进程,也可以理解为当前正在运行的每个程序都是一个进程。我们现在使用的操作系统大都是多任务系统的,如:Windows、Linux、MacOSX、Unix等。因为单个CPU在同一时刻只能执行一个程序,这是铁律。但在系统中单个CPU又怎么能同时执行多个程序呢?实际情况这是由操作系
Wesley13 Wesley13
3年前
Java 并发编程之 JMM & volatile 详解
本文从计算机模型开始,以及CPU与内存、IO总线之间的交互关系到CPU缓存一致性协议的逻辑进行了阐述,并对JMM的思想与作用进行了详细的说明。针对volatile关键字从字节码以及汇编指令层面解释了它是如何保证可见性与有序性的,最后对volatile进行了拓展,从实战的角度更了解关键字的运用。一、现代计算机理论模型与工作原理
Stella981 Stella981
3年前
24小时学通Linux内核之如何处理输入输出操作
   Linux内核是如何将软硬件结合起来的呢?这里我们将一起探究内核与周围硬件主要是文件IO和硬件设备之间的关系,来解释这个问题。处理器与周围设备的通信依赖于一系列的电路电线,总线就是具有类似功能的电线,设备与处理器通信主要是通过地址总线,数据总线,控制总线来实现,这里在学习单片机原理的时候也提到过,这里对系统的基本结构就不多说了,觉得更新快,不好讲解,
Wesley13 Wesley13
3年前
Java并发编程基础
什么情况下应该使用多线程:线程出现的目的是什么?解决进程中多任务的实时性问题?其实简单来说,也就是解决“阻塞”的问题,阻塞的意思就是程序运行到某个函数或过程后等待某些事件发生而暂时停止CPU占用的情况,也就是说会使得CPU闲置。还有一些场景就是比如对于一个函数中的运算逻辑的性能问题,我们可以通过多线程的技术,使得一个函数中的多