- 自己开发I2C Bootloader -上位机开发篇
EE工程师
嵌入式系统pythonstm32单片机
上位机脚本开发 在芯片原厂大部分工程师选择的脚本语言依然是Python,Python有哪些开发优势这里就不再讨论了,这里我们只陈述一下上位机的开发环境,作者的开发环境是VSCode+Anaconda。脚本内容也没有什么好说的,一看就懂,比较简单。唯一值得提醒的是本项目的上位机开发需要多注意*Write_DataBytes_To_Serial_Port(self,DataBytes):*函数的实现
- 自己开发I2C Bootloader -下位机开发篇
EE工程师
嵌入式系统c语言visualstudiocodestm32单片机
开发前言 下位机开发就裸机编程而言其实就是基于MCU做固件或者说驱动开发,那目前作者接触到的主流的MCU型号国外的就是STM32,国内的就是GD32,至于其它家一般都有其特定的应用领域或者细分市场战略。就本项目的i2cbootloader开发而言,这里的下位机开发要实现的功能主要就包括两点,一是要实现串口转I2C驱动,二是要实现MCU内部Flash读写,具体来讲就是基于STM32F103来实现U
- Redmi 5Plus Liunx(PostmarketOS) Installation Tutorial
Setup1unlockbootloaderReference:https://www.miui.com/unlock/index.htmlNotice:miflush_unlockrequiresawindowsosIftheunlocktooldoesnotrecognizethephone,youneedtoinstallthedrivermanuallyinthedevicemanager
- STM32F1系列综合测试程序实践指南
Love Snape
本文还有配套的精品资源,点击获取简介:STM32F1系列微控制器是基于ARMCortex-M3内核的低成本、高性能嵌入式系统解决方案。本综合测试程序旨在帮助初学者快速掌握STM32的基础操作和关键知识点,包括裸机编程、GPIO操作、定时器应用、串行通信、ADC转换、中断处理和Bootloader等。同时,程序将指导学习者熟悉开发环境和理解代码结构,为未来在嵌入式系统开发领域打下坚实的基础。1.ST
- 【Note】Linux Kernel 主题学习之“完整的嵌入式 Linux 环境、构建工具、编译工具链、CPU 架构”
CodeWithMe
读书笔记linuxlinux学习架构
LinuxKernel主题学习之“完整的嵌入式Linux环境、构建工具、编译工具链、CPU架构”一、完整的嵌入式Linux环境一个嵌入式Linux系统通常包括以下关键组件(以Jetson、树莓派等ARM版SBC为例):交叉编译工具链(crosstoolchain):生成目标CPU可执行代码,如aarch64-linux-gnu-gcc+glibc/musl/uClibc。Bootloader:如U
- Linux 基础入门操作 第十四章 .U-Boot 编译 1
1U-Bboot编译1.1UBOOT介绍U-Boot,全称UniversalBootLoader,是遵循GPL条款的开放源码项目。从FADSROM、8xxROM、PPCBOOT逐步发展演化而来。其源码目录、编译形式与Linux内核很相似,事实上,不少U-Boot源码就是相应的Linux内核源程序的简化,尤其是一些设备的驱动程序,这从U-Boot源码的注释中能体现这一点。但是U-Boot不仅仅支持嵌
- Zephyr MCUBoot
咕咚.萌西
Zephyr单片机物联网嵌入式硬件
文章目录MCUBoot简介组成前提条件构建Bootloader为Bootloader构建APP签名密钥创建公钥提取程序烧录APP中使用MCUBootMCUBoot简介MCUBoot是可配置的安全引导加载程序,由多个行业领导者维护。它可以作为第一或第二阶段的引导加载程序运行,支持软件映像的加密验证,支持的加密方式如下:ECDSA-P256RSA-2048RSA-3072默认情况下,它支持映像回滚,下
- mcu secure boot 设计(一、Flash layout)
lwz070
单片机嵌入式硬件
Flashlayout此flash为MCU内部flash,需要硬件保护,防篡改和读取。1.PBL:为bootloader代码pbl中不支持远程升级,仅在APP中支持远程。pbl中可以支持uart和can协议升级。2.globalstate:{runflag//1:runimageA,2:runimageBImageAsecuritypassflag//1:pass,2:failImageBsecu
- 韶音科技嵌入式面试题及参考答案
大模型大数据攻城狮
科技单片机嵌入式硬件八股文面试牛客网大厂面试C++11
Bootloader的启动流程是什么?Bootloader是在操作系统内核运行之前运行的一段小程序。它的启动流程主要分为以下几个阶段。首先是硬件初始化阶段。这个阶段会对处理器以及一些关键的硬件设备进行初始化。比如,会配置处理器的工作模式、设置堆栈指针等。以ARM处理器为例,会设置处理器进入SVC(管理)模式,这是因为在这个模式下能够访问系统的所有资源,方便后续对硬件进行初始化。还会初始化一些基本的
- SPI NOR FLASH是什么,与SPI NAND Flash的区别
义嘉泰IC烧录服务
前端javascript网络
SPINORFLASH是什么?SPINORFLASH是一种非易失性存储器,它通过串行接口进行数据传输,具有读写速度快、可靠性高、体积小等优点。它采用类似SRAM的存储方式,每个存储单元存储一位数据(0或1),可以直接寻址,寻址速度非常快。SPINORFLASH支持全双工、单工以及半双工传输方式,被广泛应用于嵌入式系统中,如Bootloader、操作系统内核等程序的存储。由于它的读写速度和寻址方式类
- vxWorks7.0下基于zynq的boot启动程序
hongbozhu_1981
最近工作有点忙,好久没有更新内容,前段时间抽空做了vxWorks7.0下的基于zynq的boot程序,在此做个总结。vxworks7.0支持三种不同的boot程序:第一种uboot,第二种vxworks6.9.x以上的bootloader,第三种bootapp,关于uboot的创建方法在前面的博文中已经提到过,bootloader6.9的话,因为我不在使用6.9的版本,所以在此也就不做介绍,今天我
- MCU双分区方案,如何优雅地获知当前运行分区?
智驾
STM32嵌入式硬件OTA升级双分区bootloader
文章目录引言双分区基础方案方法一:链接脚本定义分区变量(硬件级别)方法二:PC指针范围检测(通用方法)方法三:Bootloader分区信令(协作式)核心原理详细实现1.内存规划(链接脚本)2.Bootloader关键代码3.应用程序读取进阶增强措施1.内存保护机制2.多核系统的扩展3.安全增强优势和挑战方法四:分区签名方案(高可靠的硬识别)核心原理详细实现1.签名头设计2.链接脚本定义3.应用代码
- 【闲谈】汇编还需要浪费精力学吗?
CodeWithMe
C/C++计算机认知入门软件开发汇编开发语言
工作多年,我为什么还要学习汇编语言?“我都已经做了这么多年开发了,真的还有必要去啃汇编吗?”这是不少中高级软件工程师在职业发展中遇到的疑问。在AI大模型、云计算如火如荼的今天,汇编语言看起来仿佛是上个世纪的“古董”。但真的是这样吗?一、汇编语言真的“过时”了吗?表面看似过时,实则无处不在虽然你日常不会直接写汇编,但它依然支撑着我们所有运行环境:操作系统启动:从引导加载器(bootloader)到内
- 物联网时代必看!四款高性价比单片机Bootloader深度解析
宋一平工作室
物联网单片机嵌入式硬件
物联网时代必看!四款高性价比单片机Bootloader深度解析在物联网设备爆发式增长的今天,当你手中的智能家电、工业控制器需要更新功能时,是否想过背后的“幕后推手”?没错,就是Bootloader——这个默默负责单片机固件更新的关键程序。想象一下:如果没有它,每次升级都要拆开机身重新烧录程序,那该多麻烦?今天就带大家解锁四款实用到“尖叫”的单片机Bootloader,从开源框架到轻量级方案,总有一
- 汽车电子Bootloader核心原理与TC377芯片架构解析
大表哥汽车人
汽车架构
汽车电子Bootloader核心原理与TC377芯片架构解析引言随着汽车"软件定义"时代的到来,Bootloader作为ECU软件架构的基石,其重要性日益凸显。从最初简单的程序引导功能,到如今支持复杂OTA升级、安全认证和多核协调的高级系统,Bootloader的演进折射出整个汽车电子行业的技术变革。本文将深入剖析基于英飞凌TC377芯片的汽车Bootloader设计,从AutoSAR架构整合、多
- 【linux开发-驱动】-U-Boot相关
笃行致远~
l嵌入式inux开发linux单片机驱动开发
一、什么是U-Boot1、Linux系统要启动需要通过bootloader程序引导,也就说芯片上电以后先运行一段bootloader程序。2、uboot是一个裸机程序,就是一个bootloader,作用就是用于启用linux或其他系统。uboot最主要的工作就是初始化DDR。在实际开发中,我们一般不会直接用uboot官方的U-Boot源码的,一般使用开发板半导体厂商提供的更全面。区别:种类描述ub
- Android - lock/unlock bootloader
在执行adbremount时高版本经常会提示失败此时就需要对设备的进行解锁操作。记录两个部分,Google解锁和展锐解锁。目录一、Google解锁二、展锐解锁三、补充跳过按键检测的方案一、Google解锁官网介绍的unlock方法如下:锁定/解锁引导加载程序|AndroidOpenSourceProject简单总结一下需要的步骤如下:1、进入引导加载程序adbrebootbootloader2、解
- 鸿蒙开发实战之Device Security Kit加固美颜相机安全防线
harmonyos-next
一、安全威胁全景与应对在美颜相机场景中,我们面临三大核心威胁:设备篡改风险:Root/越狱设备上的敏感数据窃取运行时攻击:内存注入、调试器附加等动态攻击固件漏洞:摄像头驱动层的潜在安全隐患DeviceSecurityKit提供四维防护:设备完整性校验(Bootloader到应用层的完整信任链)运行时防护(内存加密、反调试等)硬件安全区隔离(TEE中处理人脸特征)威胁实时响应(攻击触发自动熔断)二、
- 完整 Bootloader 框架
花落已飘
单片机bootloader
文章目录完整Bootloader框架讲解一、Bootloader的核心功能概览1.启动应用(APP)2.命令交互3.下载功能4.烧写APP到Flash5.调试与维护功能二、模块化设计框架三、典型工作流程四、各模块简要说明1.命令行模块(CLI)2.命令注册与执行机制3.烧写模块4.下载协议支持五、跳转启动APP六、安全与扩展设计七、结语完整Bootloader框架讲解一、Bootloader的核心
- 【基础工程搭建】Load Bus Error异常问题分析
汽车电子嵌入式
AUTOSAR项目实战AUTOSAR精进之路AUTOSARLBETrapTCNTINTricore
目录前言正文1.问题分析2.解决办法3总结前言汽车电子嵌入式开始更新全新的AUTOSAR项目实战专栏内容,从0到1搭建一个AUTOSAR工程,内容会覆盖AUTOSAR通信协议栈、存储协议栈、诊断协议栈、MCAL、系统服务、标定、Bootloader、复杂驱动、功能安全等所有常见功能和模块,全网同步更新开发设计文档(后期也会更新视频内容)。本文为前期基础工程搭建过程遇到的问题分析-总线加载异常(lo
- Linux内核学习资料-deepseek
如果你对Linux内核感兴趣,这里有一份系统的公开课资源推荐,涵盖入门到进阶,配合实践工具,助你高效学习:—###一、精选公开课1.清华大学《操作系统》-课程重点:结合Linux内核源码讲解进程管理、内存管理、文件系统(实验用Linux0.11)-资源:-学堂在线课程-配套书籍《操作系统:原理与实现》(银杏书)-实践:6个渐进式实验(从Bootloader到文件系统)2.哈工大《操作系统》-特点:
- Linux系统移植——系统移植初步介绍
物联网设计-妄北y
深耕Linux系统下的应用开发linux运维服务器嵌入式嵌入式硬件
目录:目录目录:一、嵌入式Linux系统软件组成及分布1.1内核(Kernel)1.2根文件系统(RootFilesystem)1.3系统库(Libraries)1.4应用程序(Applications)1.5驱动程序(Drivers)1.6启动程序(Bootloader)1.7配置文件(ConfigurationFiles)1.8中间件(Middleware)1.9开发工具(Developmen
- 操作系统架构代码逻辑实现
你一身傲骨怎能输
操作系统架构操作系统
操作系统架构的代码逻辑实现是一个高度复杂且专业化的过程,涉及到底层的硬件管理、资源分配、进程调度、内存管理等多个关键领域。以下是一个简化的概述,展示了一些核心组件和它们的基本逻辑实现思路。1.引导加载程序(Bootloader)功能:初始化硬件,加载操作系统内核到内存,并启动内核。实现逻辑:;简化的x86汇编代码示例movax,0x07C0;设置段寄存器movds,axmoves,axmovss,
- 给8088单板机写一个迷你Boot
iCxhust
编程语言#8086汇编单片机stm32物联网嵌入式硬件
4.迷你Boot1.为什么要给8088单板机系统,添加一个bootloader呢?起初,能够用编程器,烧写测试程序,就已经非常开心了,毕竟自己苦苦琢磨8088系统了几年时间,一直感觉无从下手。尽管自己有了多年的单片机开发应用经验,比如51单片机和PIC单片机,但是市面上关于8088单板机如何制作的资料还是太少了。由于8088单板机系统的开发,处于一个很原始的状态,市面上几乎得不到可用的仿真器,所以
- mtk上电开机记录
目前发量还行
linux驱动开发
1.preloadera.vendor/mediatek/proprietary/bootable/bootloader/preloader/custom/k65v1_64_bsp/inc/cust_rtc.h---a/vendor/mediatek/proprietary/bootable/bootloader/preloader/custom/k65v1_64_bsp/inc/cust_rtc
- 关于英飞凌芯片中Boot程序的存放区域,结合其存储架构和启动机制,具体说明如下:
Jayus_akkk
单片机mcu
一、Boot的存储位置与启动模式在英飞凌芯片(如TLE9891、XC2000系列)中,Boot程序通常存储在Flash存储器的特定地址段,并通过硬件配置(如BOOT引脚)或软件设置确定启动模式。主闪存模式(默认模式):Boot程序存放在Flash的起始地址(如0x08000000),上电后芯片直接从该区域加载并运行Bootloader。应用场景:适用于常规程序启动和固件升级。系统存储器模式:部分芯
- 君正x1000 Java虚拟机_新闻中心_君正 Ingenic Semiconductor
weixin_39526741
君正x1000Java虚拟机
参考开发板:RD_X1000_HALLEY2_EXT/Baseboard_V2.0(SPI-norJFFS2).RD_X1000_PHOENIX_V2.0(SPI-norJFFS2/SPI-nandUBI).Tags:ingenic-linux-kernel3.10.14-x1000-v5.0-20161213版本更新功能:bootloader:1.修复tftpboot问题2.DDRdriver自
- 关于堆栈指针的那些事 | bootloader 如何跳转app
woainizhongguo.
51/STM32单片机c语言开发语言
问题描述堆栈指针的值通常存储在App的向量表(VectorTable)的第一个位置(0x08002000),为什么?在嵌入式系统中,堆栈指针(SP)的值存储在应用程序(App)的向量表(VectorTable)的第一个位置,这是由ARMCortex-M架构的设计和启动过程决定的。以下是对这一设计的详细解释:1.ARMCortex-M架构的启动过程ARMCortex-M架构(如Cortex-M3、C
- Linux 的OTA升级学习1:Linux OTA升级方案_SWupdate
NULL指向我
OTA升级技术linux学习运维
嵌入式Linux系统通常基于Linux内核进行定制和优化,包括引导程序(Bootloader)、内核、文件系统和应用程序等多个层次。这种分层架构使得OTA升级需要同时考虑多个组件的更新和兼容性。LinuxOTA升级方案:核心组件:SWUpdate+U-Boot引导程序+升级包生成工具+固件镜像+lua脚本语言+存储分区+校验机制+远程下载+协议一、核心组件1.SWUpdate工具链功能:负责升级包
- Lspatch的使用原理及机制
王景程
智能手机vscodetypescript
很多搞机佬们在玩机的时候都会偏向于给系统装上LSposed框架,这对于有root的小伙伴来说那可是刚需。但是在手机没有root的情况下或者是bootloader未解锁的时候,想要玩机那就得用LSpatch啦!下面给大家讲一讲其工作原理LSPatch的工作原理可以从以下几个关键方面来分析,包括XposedHook机制、补丁注入方式、代码修改方式、运行时加载机制、签名与安全机制。1.LSPatch的核
- scala的option和some
矮蛋蛋
编程scala
原文地址:
http://blog.sina.com.cn/s/blog_68af3f090100qkt8.html
对于学习 Scala 的 Java™ 开发人员来说,对象是一个比较自然、简单的入口点。在 本系列 前几期文章中,我介绍了 Scala 中一些面向对象的编程方法,这些方法实际上与 Java 编程的区别不是很大。我还向您展示了 Scala 如何重新应用传统的面向对象概念,找到其缺点
- NullPointerException
Cb123456
androidBaseAdapter
java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.View.getImportantForAccessibility()' on a null object reference
出现以上异常.然后就在baidu上
- PHP使用文件和目录
天子之骄
php文件和目录读取和写入php验证文件php锁定文件
PHP使用文件和目录
1.使用include()包含文件
(1):使用include()从一个被包含文档返回一个值
(2):在控制结构中使用include()
include_once()函数需要一个包含文件的路径,此外,第一次调用它的情况和include()一样,如果在脚本执行中再次对同一个文件调用,那么这个文件不会再次包含。
在php.ini文件中设置
- SQL SELECT DISTINCT 语句
何必如此
sql
SELECT DISTINCT 语句用于返回唯一不同的值。
SQL SELECT DISTINCT 语句
在表中,一个列可能会包含多个重复值,有时您也许希望仅仅列出不同(distinct)的值。
DISTINCT 关键词用于返回唯一不同的值。
SQL SELECT DISTINCT 语法
SELECT DISTINCT column_name,column_name
F
- java冒泡排序
3213213333332132
java冒泡排序
package com.algorithm;
/**
* @Description 冒泡
* @author FuJianyong
* 2015-1-22上午09:58:39
*/
public class MaoPao {
public static void main(String[] args) {
int[] mao = {17,50,26,18,9,10
- struts2.18 +json,struts2-json-plugin-2.1.8.1.jar配置及问题!
7454103
DAOspringAjaxjsonqq
struts2.18 出来有段时间了! (貌似是 稳定版)
闲时研究下下! 貌似 sruts2 搭配 json 做 ajax 很吃香!
实践了下下! 不当之处请绕过! 呵呵
网上一大堆 struts2+json 不过大多的json 插件 都是 jsonplugin.34.jar
strut
- struts2 数据标签说明
darkranger
jspbeanstrutsservletScheme
数据标签主要用于提供各种数据访问相关的功能,包括显示一个Action里的属性,以及生成国际化输出等功能
数据标签主要包括:
action :该标签用于在JSP页面中直接调用一个Action,通过指定executeResult参数,还可将该Action的处理结果包含到本页面来。
bean :该标签用于创建一个javabean实例。如果指定了id属性,则可以将创建的javabean实例放入Sta
- 链表.简单的链表节点构建
aijuans
编程技巧
/*编程环境WIN-TC*/ #include "stdio.h" #include "conio.h"
#define NODE(name, key_word, help) \ Node name[1]={{NULL, NULL, NULL, key_word, help}}
typedef struct node { &nbs
- tomcat下jndi的三种配置方式
avords
tomcat
jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。命名服务将名称和对象联系起来,使得我们可以用名称
访问对象。目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性。
tomcat配置
- 关于敏捷的一些想法
houxinyou
敏捷
从网上看到这样一句话:“敏捷开发的最重要目标就是:满足用户多变的需求,说白了就是最大程度的让客户满意。”
感觉表达的不太清楚。
感觉容易被人误解的地方主要在“用户多变的需求”上。
第一种多变,实际上就是没有从根本上了解了用户的需求。用户的需求实际是稳定的,只是比较多,也比较混乱,用户一般只能了解自己的那一小部分,所以没有用户能清楚的表达出整体需求。而由于各种条件的,用户表达自己那一部分时也有
- 富养还是穷养,决定孩子的一生
bijian1013
教育人生
是什么决定孩子未来物质能否丰盛?为什么说寒门很难出贵子,三代才能出贵族?真的是父母必须有钱,才能大概率保证孩子未来富有吗?-----作者:@李雪爱与自由
事实并非由物质决定,而是由心灵决定。一朋友富有而且修养气质很好,兄弟姐妹也都如此。她的童年时代,物质上大家都很贫乏,但妈妈总是保持生活中的美感,时不时给孩子们带回一些美好小玩意,从来不对孩子传递生活艰辛、金钱来之不易、要懂得珍惜
- oracle 日期时间格式转化
征客丶
oracle
oracle 系统时间有 SYSDATE 与 SYSTIMESTAMP;
SYSDATE:不支持毫秒,取的是系统时间;
SYSTIMESTAMP:支持毫秒,日期,时间是给时区转换的,秒和毫秒是取的系统的。
日期转字符窜:
一、不取毫秒:
TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS')
简要说明,
YYYY 年
MM 月
- 【Scala六】分析Spark源代码总结的Scala语法四
bit1129
scala
1. apply语法
FileShuffleBlockManager中定义的类ShuffleFileGroup,定义:
private class ShuffleFileGroup(val shuffleId: Int, val fileId: Int, val files: Array[File]) {
...
def apply(bucketId
- Erlang中有意思的bug
bookjovi
erlang
代码中常有一些很搞笑的bug,如下面的一行代码被调用两次(Erlang beam)
commit f667e4a47b07b07ed035073b94d699ff5fe0ba9b
Author: Jovi Zhang <
[email protected]>
Date: Fri Dec 2 16:19:22 2011 +0100
erts:
- 移位打印10进制数转16进制-2008-08-18
ljy325
java基础
/**
* Description 移位打印10进制的16进制形式
* Creation Date 15-08-2008 9:00
* @author 卢俊宇
* @version 1.0
*
*/
public class PrintHex {
// 备选字符
static final char di
- 读《研磨设计模式》-代码笔记-组合模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.util.ArrayList;
import java.util.List;
abstract class Component {
public abstract void printStruct(Str
- 利用cmd命令将.class文件打包成jar
chenyu19891124
cmdjar
cmd命令打jar是如下实现:
在运行里输入cmd,利用cmd命令进入到本地的工作盘符。(如我的是D盘下的文件有此路径 D:\workspace\prpall\WEB-INF\classes)
现在是想把D:\workspace\prpall\WEB-INF\classes路径下所有的文件打包成prpall.jar。然后继续如下操作:
cd D: 回车
cd workspace/prpal
- [原创]JWFD v0.96 工作流系统二次开发包 for Eclipse 简要说明
comsci
eclipse设计模式算法工作swing
JWFD v0.96 工作流系统二次开发包 for Eclipse 简要说明
&nb
- SecureCRT右键粘贴的设置
daizj
secureCRT右键粘贴
一般都习惯鼠标右键自动粘贴的功能,对于SecureCRT6.7.5 ,这个功能也已经是默认配置了。
老版本的SecureCRT其实也有这个功能,只是不是默认设置,很多人不知道罢了。
菜单:
Options->Global Options ...->Terminal
右边有个Mouse的选项块。
Copy on Select
Paste on Right/Middle
- Linux 软链接和硬链接
dongwei_6688
linux
1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。
【硬连接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连
- DIV底部自适应
dcj3sjt126com
JavaScript
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml&q
- Centos6.5使用yum安装mysql——快速上手必备
dcj3sjt126com
mysql
第1步、yum安装mysql
[root@stonex ~]# yum -y install mysql-server
安装结果:
Installed:
mysql-server.x86_64 0:5.1.73-3.el6_5 &nb
- 如何调试JDK源码
frank1234
jdk
相信各位小伙伴们跟我一样,想通过JDK源码来学习Java,比如collections包,java.util.concurrent包。
可惜的是sun提供的jdk并不能查看运行中的局部变量,需要重新编译一下rt.jar。
下面是编译jdk的具体步骤:
1.把C:\java\jdk1.6.0_26\sr
- Maximal Rectangle
hcx2013
max
Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle containing all ones and return its area.
public class Solution {
public int maximalRectangle(char[][] matrix)
- Spring MVC测试框架详解——服务端测试
jinnianshilongnian
spring mvc test
随着RESTful Web Service的流行,测试对外的Service是否满足期望也变的必要的。从Spring 3.2开始Spring了Spring Web测试框架,如果版本低于3.2,请使用spring-test-mvc项目(合并到spring3.2中了)。
Spring MVC测试框架提供了对服务器端和客户端(基于RestTemplate的客户端)提供了支持。
&nbs
- Linux64位操作系统(CentOS6.6)上如何编译hadoop2.4.0
liyong0802
hadoop
一、准备编译软件
1.在官网下载jdk1.7、maven3.2.1、ant1.9.4,解压设置好环境变量就可以用。
环境变量设置如下:
(1)执行vim /etc/profile
(2)在文件尾部加入:
export JAVA_HOME=/home/spark/jdk1.7
export MAVEN_HOME=/ho
- StatusBar 字体白色
pangyulei
status
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
/*you'll also need to set UIViewControllerBasedStatusBarAppearance to NO in the plist file if you use this method
- 如何分析Java虚拟机死锁
sesame
javathreadoracle虚拟机jdbc
英文资料:
Thread Dump and Concurrency Locks
Thread dumps are very useful for diagnosing synchronization related problems such as deadlocks on object monitors. Ctrl-\ on Solaris/Linux or Ctrl-B
- 位运算简介及实用技巧(一):基础篇
tw_wangzhengquan
位运算
http://www.matrix67.com/blog/archives/263
去年年底写的关于位运算的日志是这个Blog里少数大受欢迎的文章之一,很多人都希望我能不断完善那篇文章。后来我看到了不少其它的资料,学习到了更多关于位运算的知识,有了重新整理位运算技巧的想法。从今天起我就开始写这一系列位运算讲解文章,与其说是原来那篇文章的follow-up,不如说是一个r
- jsearch的索引文件结构
yangshangchuan
搜索引擎jsearch全文检索信息检索word分词
jsearch是一个高性能的全文检索工具包,基于倒排索引,基于java8,类似于lucene,但更轻量级。
jsearch的索引文件结构定义如下:
1、一个词的索引由=分割的三部分组成: 第一部分是词 第二部分是这个词在多少