一.  CPU 过高或死锁导致系统卡死 1. CPU占用过高 (1)开线程太多导致CPU占用过高,系统卡死 解决:优化应用层业务逻辑,有些业务不必开线程就不开 (2)频繁清缓存导致读spi-flash频繁,引起CPU过高 解决:在内核中文件系统部分进行处理,不去清缓存,然后在应用层用后台服务进程清缓存.这样可能导致系统内存不够用,这样就需要再对系统内存进行优化 2. CPU死锁 (1)Spinlock+死等导致死锁 (2)应用层pthread_mutex_lock死锁 3.  CPU过热导致系统…
原文链接:https://blog.fanscore.cn/p/27/ 一. 函数调用相关指令 关于栈可以看下我之前的这篇文章x86 CPU与IA-32架构 在开始函数调用约定之前我们需要先了解一下几个相关的指令 1.1 push pushq 立即数 # q/l是后缀,表示操作对象的大小 pushl 寄存器 push指令将数据压栈.具体就是将esp(stack pointer)寄存器减去压栈数据的大小,再将数据存储到esp寄存器所指向的地址. 1.2 pop popq 寄存器 popl 寄存器…
嵌入式X86运行linux及QtEmbedded+触摸屏(X86PC104+Xlinux+QtE+触摸屏解决办法) QQ:5724308 邮箱:sankye@163.com…
本来,这个问题网上资源很多的,但是就因为多,就变得杂了,对于许多新手,并不理解为啥,故记录下来方便以后使用.此处我采用配置VWmare虚拟网关(上学期刚刚学计算机网络,正好可以复习下).关于虚拟机下Linux系统的安装就略过,此处就以RHEL 6.5为例. 1.配置序列网络网关部分:在VMware界面下,编辑-->虚拟网络编辑器 ,出现如图界面: 此处,设置子网IP为192.168.2.0,点击 NAT设置,进入界面: 此处,设置网关IP为192.168.2.1(其实此处网关IP只要能够保证与上…
通常在出现系统崩溃后,大家会担心再次出现故障,但是发现系统各日志中并没有记录到任何死机前后的信息,无法分析故障原因,认为已经无药可救.但是,实际上,Linux 有多种机制来保证发生系统崩溃后,可以获取有价值的信息用以分析问题.确定是硬件故障,还是应用程序bug 导致的. Linux 中,有如下几种方法来获取各种崩溃时产生的信息. Core dump Core dump 通常用来调试应用程序错误,当某些应用程序运行出现异常崩溃时,可以开启系统的 core dump 功能,来得到一个程序崩溃时的内存…
众所周知在默认参数情况下Linux对高并发支持并不好,主要受限于单进程最大打开文件数限制.内核TCP参数方面和IO事件分配机制等.下面就从几方面来调整使Linux系统能够支持高并发环境. Iptables相关 如非必须,关掉或卸载iptables防火墙,并阻止kernel加载iptables模块.这些模块会影响并发性能. 单进程最大打开文件数限制 一般的发行版,限制单进程最大可以打开1024个文件,这是远远不能满足高并发需求的,调整过程如下: 在#号提示符下敲入: # ulimit–n 6553…
前段时间发布的系统(Oracle+weblogic)频繁挂掉,每天早上9点.下午2点高峰期就挂,纠结了很长时间,最终解决,方法描述下. 执行select count(*),status from v$session group by status;指令,发现不活动连接数比较大,当上升到一定数值之和,就挂. 做了下面优化,包括数据库的优化和WebLogic的优化. 1.数据库优化 1)  创建pfile SQL>create pfile from spfile 检查 oracle/product/…
WSL 以往我都是直接安装VirtualBox,然后再下载Linux系统的ISO镜像,装到VirtualBox里运行. 改用Win10系统后,了解到了WSL(Windows Subsystem for Linux),win10系统提供了直接安装Linux的便利,因此不用再通过虚拟机使用Linux系统. WSL作为Windows组件搭载在Windows10周年更新(1607)后的Windows系统中. WSL作为系统层的一部分,相较于应用层(虚拟机)会消耗更少的资源,并且与系统锲合度更高. WSL…
虚拟机下Linux系统设置IP地址三种方法 文章来源:https://jingyan.baidu.com/article/ea24bc399ffeb9da62b3318f.html 工具/原料   VMWare 10.0 CentOS 6.4 64位 方法/步骤1   1 在屏幕上,右键点击,选择“Open in Terminal”,打开一个命令行,这就相当于我们在windows系统下的cmd. 2 在命令行里输入:more  /etc/sysconfig/network-scripts/ifc…
一个未使用,未分配的cjson指针应该被删除,如果尝试删除一个 未分配,未启用的cjson将导致内存出错,死机.…