- STM32F411与RT-Thread实时操作系统:定时器功能实现
本文还有配套的精品资源,点击获取简介:本项目详细介绍了如何在STM32F411单片机上利用RT-Thread实时操作系统实现硬件定时器功能。STM32F411是高性能、低功耗的Cortex-M4内核微控制器,而RT-Thread提供了一个轻量级、功能丰富的实时操作系统环境,适用于物联网设备。本文档涵盖了通用定时器和高级定时器的不同配置和使用方法,并强调了中断优先级配置、资源冲突解决、定时精度选择和
- 15.FreeRTOS 消息缓存 Message Buffer
宁子希
freeRTOS-ESP32c++ESP-IDF嵌入式硬件
FreeRTOS消息缓存(MessageBuffer)的使用介绍在实时操作系统(RTOS)中,任务之间的通信是一个非常重要的方面。FreeRTOS提供了多种机制来实现任务间通信,其中之一就是消息缓存(MessageBuffer)。消息缓存非常适合传递长度可变的消息,并且在性能和灵活性方面提供了很大的优势。什么是消息缓存?消息缓存是FreeRTOS提供的一种数据结构,用于在任务之间传递变长消息。与队
- 软考 | 系统架构设计师:信息系统综合知识大纲(思维导图)
啊有礼貌
软考系统架构设计师架构师思维导图软件架构
1.计算机软件与网络基础知识1.1操作系统操作系统的类型和结构操作系统基本原理网络操作系统及网络管理嵌入式操作系统与实时操作系统1.2数据库系统数据库管理系统的类型、结构和性能评价常用的关系型数据库管理系统数据库模式数据库规范化分布式数据库系统,并行数据库系统数据仓库与数据挖掘技术数据库工程备份恢复1.3嵌入式系统嵌入式系统的特点嵌入式系统的硬件组成与设计嵌入式系统应用软件及开发平台嵌入式系统网络
- UCOS-II 在单片机中的应用
woainizhongguo.
51/STM32单片机单片机嵌入式硬件stm32系统架构
引言在快速发展的嵌入式系统领域,实时操作系统(RTOS)的作用日益凸显,成为推动高效、可靠系统开发的关键组成部分。作为RTOS的杰出代表之一,μC/OS-II因其强大的功能和灵活的配置,已成为许多嵌入式项目的首选。不仅因为它能够提供丰富的多任务处理能力,还因为它在资源管理、任务调度和时间管理等方面的卓越性能。μC/OS-II是一款免费的、可裁剪的、抢占式的实时操作系统内核。它设计用于多任务环境,特
- 从“一人干多活”到“团队协作”:RTOS多任务调度,居然藏着这么多小聪明!
从“一人干多活”到“团队协作”:RTOS多任务调度,居然藏着这么多小聪明!你有没有过这种经历:一边炖着汤,一边炒着菜,还得时不时跑去看一眼烤箱里的面包,结果手忙脚乱打翻了盐罐?嵌入式系统处理任务时,也曾面临同样的“窘境”——裸机系统就像一个人包揽所有活,只能按顺序挨个做;而RTOS(实时操作系统)则像雇了个“智能调度员”,能让多个任务“轮流上岗”,甚至“紧急任务插队”,效率直接翻倍!今天咱们就从裸
- 使用 FreeRTOS 实现简单多任务调度(初识 RTOS)
欢乐熊嵌入式编程
FreeRTOS嵌入式开发多任务调度RTOS单片机
使用FreeRTOS实现简单多任务调度(初识RTOS)“裸机是手动挡,RTOS是自动挡。程序员也要学会偷懒!”——《从延时到调度:嵌入式人的进阶之路》一、什么是RTOS?为啥你迟早会用上它?RTOS,全名Real-TimeOperatingSystem(实时操作系统)。简单理解,它是为MCU打工的“调度大脑”,能帮你搞定这些烦人的事:多个任务如何“分时共享CPU”谁先执行谁后执行哪个任务被中断了怎
- 全网最全学习Zephyr开发中文教程资料汇总-从基础文档视频到上手实操示例
聆思科技AI芯片
Zephyr保姆级上手教程zephyrAIGC多模态嵌入式硬件iot硬件工程驱动开发
Zephyr作为一款开源且极具灵活性与可扩展性的实时操作系统(RTOS),拥有原生的BLE协议栈、完整的Net协议栈,涵盖TCP/IP与应用层协议,具备出色的实时性,支持硬实时任务调度,确保系统响应的确定性延迟,并且内存占用极小。丰富的通信机制、深度集成的电源管理模式等,也进一步提升了其在嵌入式领域的竞争力。然而,要深入掌握Zephyr开发并非一蹴而就之事。为了方便大家顺利踏上Zephyr开发之路
- Linux——搭建嵌入式Linux开发环境步骤总结(虚拟机、Ubuntu、JDK、库文件、GCC)
Winter_world
搭建嵌入式Linux开发环境虚拟机Ubuntu安装JDK安装库文件GCC版本更新
目录0前言1主机软件环境2Linux系统下安装编译组件3Linux系统下安装库文件和JDK0前言回顾一直以来做的嵌入式项目方向,从如ST的单片机裸机开发,SOC开发,到STM32裸机开发,基于uCOSII的开发,基于freeRTOS的开发等,在实时操作系统层面的应用开发停留了一段时间了,一直想再突破下自我,去年做了一个基于工控机方案的Linux系统应用开发项目,对于Linux一直没有系统性的学习整
- Memfault 简介及在Nordic nRF91 系列 DK的应用
1:Memfault是一个云平台,它允许您和您的团队持续监控设备、调试固件问题,并将OTA更新部署到您的设备群,从而以软件的速度交付硬件产品。Memfault以嵌入式优先:支持运行在任何实时操作系统(RTOS)或Android、Linux等操作系统上的嵌入式系统和设备它适用于任何设备:从功能强大的SoC一直到功能受限的MCU,Memfault都能适配您设备的可用闪存、RAM和带宽我们的SDK是专为
- 结合 STM32CubeMX 使用 FreeRTOS 实时操作系统
麻辣长颈鹿Sir
FreeRTOS嵌入式开发C/C++stm32单片机FreeRTOSSTM32CubeMX实时操作系统C/C++
前言在STM32CubeMX软件出现以后,创建嵌入式项目变得简洁了许多,开发者无需重复编写MCU的外设初始化配置,只需在STM32CubeMX软件中动动鼠标配置完毕,就可以自动生成基于HAL/LL库的Keil项目文件,提高了开发效率。最近想要学习一下FreeRTOS操作系统,发现在STM32CubeMX中可以直接在项目中生成FreeRTOS系统源码,非常方便,而目前网上有关使用STM32CubeM
- FreeRTOS中的任务调度
boringhex.top
MCUFreeRTOSc嵌入式
引言FreeRTOS是一个流行的小型开源实时操作系统,广泛应用于嵌入式系统领域。本文旨在详细介绍FreeRTOS的任务调度机制,我们将探讨其调度算法的原理,分析调度器的源码,并通过图表帮助理解调度过程。FreeRTOS基础实时操作系统简介实时操作系统(RTOS)是为了能在规定的时间内完成特定任务的操作系统。与通用操作系统不同,实时性是其最重要的特征。FreeRTOS的特点轻量级:占用资源少,适合资
- **RTOS实时系统的发散创新与深度探索**实时操作系统(RTOS)作为嵌入式系统的重要组成部分,在现代科技领域扮演着至关重要的角色。本文将带您走进RTOS的世界,一起探索其背后的技术原理、创新应用和
weixin_43880734
python
RTOS实时系统的发散创新与深度探索实时操作系统(RTOS)作为嵌入式系统的重要组成部分,在现代科技领域扮演着至关重要的角色。本文将带您走进RTOS的世界,一起探索其背后的技术原理、创新应用和发展趋势。一、RTOS实时系统概述RTOS(Real-TimeOperatingSystem)即实时操作系统,是一种专为满足实时计算需求而设计的操作系统。它能够快速响应外部事件并做出相应处理,具有高度的可靠性
- RT-Thread 系统中线程优先级的使用与规划建议
enginexpert
mcu物联网
RT-Thread系统中线程优先级的使用与规划建议一、前言在实时操作系统RT-Thread中,线程是最基本的执行单元。合理规划和使用线程的优先级是确保系统响应速度、运行稳定性和资源调度效率的关键。本篇文章将系统梳理RT-Thread中多线程优先级的使用原则、注意事项,并给出推荐的优先级规划图表,便于开发者参考使用。二、优先级机制简介RT-Thread默认支持32个线程优先级(可通过RT_THREA
- 从零开始搭建人形机器人SoC硬件系统:完整开发流程详解
AI天才研究院
ChatGPT计算AI人工智能与大数据机器人ai
从零开始搭建人形机器人SoC硬件系统:完整开发流程详解关键词:人形机器人、SoC硬件系统、嵌入式开发、机器人控制、传感器融合、ROS、实时操作系统摘要:本文将详细介绍从零开始搭建人形机器人SoC硬件系统的完整开发流程。我们将从硬件选型开始,逐步讲解系统架构设计、传感器集成、运动控制实现、软件系统搭建等关键环节,并通过实际案例展示如何将各个模块整合为一个完整的机器人系统。文章将采用循序渐进的方式,即
- Linux实时扩展(PREEMPT_RT)
爱学习的大牛123
linux开发内核应用网络linux运维服务器
一.LinuxPREEMPT_RT介绍PREEMPT_RT(实时抢占补丁)是Linux内核的一个重要扩展,专门用于提高Linux系统的实时性能。让我详细解释一下这个概念及其重要性:1.PREEMPT_RT的基本概念:•全称是"FullyPreemptibleKernel"•目标是将Linux内核转变为完全可抢占的实时操作系统•通过减少延迟和提高确定性来改善系统的实时响应能力2.主要特性:•使几乎所
- 【Zephyr OS】介绍
流浪_彩虹
嵌入式开源项目嵌入式硬件risc-vlinux
介绍Zephyr项目是一个可扩展的实时操作系统(RTOS),支持多种硬件架构,针对资源受限的设备进行了优化,并在构建时考虑了安全性。ZephyrOS基于专为资源受限和嵌入式系统设计的小型内核:从简单的嵌入式环境传感器和LED可穿戴设备到复杂的嵌入式控制器、智能手表和物联网无线应用。Zephyr内核支持多种架构,包括ARMCortex-M、Intelx86、ARC、NiosII、TensilicaX
- 操作系统期末复习(1)
小魏冬琅
计算机科学与技术windows
目录题目1:在设计实时操作系统时,首先要考虑的是()。题目2:在OS中采用多道程序设计技术,能有效地提高CPU、内存和I/O设备的()。总结题目1:在设计实时操作系统时,首先要考虑的是()。选项:A.交互性和响应时间B.实时性和可靠性C.周转时间和系统吞吐量答案:B深度讲解:理解核心名词:实时操作系统(RTOS)核心使命:实时操作系统最主要、最核心的设计目标是能够在预先确定的、严格限定的时间内响应
- T2080开发板--国产高性能嵌入式平台的核心载体
机载总线仿真测试
国产化网络安全
T2080开发板作为国产高性能嵌入式平台的核心载体,其基于天脉3操作系统的开发应用正逐步渗透到工业控制、网络安全、边缘计算等关键领域。这款由Phytium公司推出的开发板搭载了腾锐D2000系列处理器,采用8核FTC663架构,主频可达2.3GHz,配合天脉3实时操作系统的强实时特性,为国产化自主可控解决方案提供了新的技术路径。###硬件架构与性能优势T2080开发板的硬件设计充分体现了国产芯片的
- 单片机编程C/C++的while与Python的while有何不同
yifa20160404
python单片机arduino51单片机c语言stm32
虽然while循环在语法上(while(condition){...})在C/C++(常用于单片机硬件编程)和Python中看起来非常相似,但它们在执行环境、行为、资源管理和设计哲学上存在根本性的区别,尤其是在硬件编程的语境下。以下是主要的区别点:执行环境与底层控制:单片机硬件编程(C/C++):裸金属或轻量级RTOS:程序通常直接运行在硬件上(裸金属)或非常轻量级的实时操作系统上。while循环
- UCOS 嵌入式操作系统
BAGAE
rtdbs嵌入式实时数据库嵌入式硬件arm开发硬件工程算法
UCOS嵌入式操作系统是一款在嵌入式领域应用广泛且具有重要地位的实时操作系统,以下是对它的详细介绍。发展历程初始版本诞生:UCOS最早由美国嵌入式系统专家JeanJ.Labrosse于1991年开始开发。当时他在项目中需要一个合适的实时操作系统,但未能找到满足需求且价格合理的产品,于是决定自行开发。1992年,第一版UCOS完成,同年,Labrosse在《嵌入式系统编程》杂志的5月和6月刊上刊登了
- 操作系统知识(1)
sunshine151_szy
系统分析师备考天天学操作系统分类总结
操作系统的分类总结1、批处理操作系统:单道批处理和多道批处理(主机与外设可并行)2、分时操作系统:一个计算机系统与多个终端设备连接。将CPU的工作时间划分为许多很短的时间片,轮流为各个终端的用户服务。3、实时操作系统:实时是指计算机对于外来信息能够以足够快的速度进行处理并在被控对象允许的时间范围内做出快速反应。实时系统对交互能力要求不高但要求可靠性有保障。4、网络操作系统:是使联网计算机能方便而有
- 工业实时操作系统的变革之路:开放生态与国产化突破
望获linux
工业机器人制造机器人人工智能操作系统开源软件linux嵌入式软件
在智能制造、工业机器人等高精度控制领域,实时操作系统(RTOS)作为设备的“中枢神经”,其性能直接关系到生产效率和系统可靠性。传统RTOS凭借封闭架构下的确定性调度,长期占据工业控制领域核心地位。但随着工业设备智能化升级与国产化替代的双重浪潮,行业对RTOS的需求正从“单一实时性”向“实时+开放+生态”的复合维度跃迁。在这场静默的技术革命中,一个以开放生态为核心、国产化突破为特征的新格局正在形成。
- 嵌入式开发必看:如何判断单片机能否跑 RTOS 及是否该用 RTOS
宋一平工作室
单片机嵌入式硬件stm3251单片机mcu
如何判断单片机能否运行RTOS?嵌入式开发者必看指南在嵌入式开发中,是否采用RTOS(实时操作系统)是许多工程师的常见困惑。本文将从硬件资源和系统需求两个维度,解析判断MCU能否运行RTOS的关键要素。一、RTOS对MCU的核心要求存储器资源配置ROM容量:建议≥32KB需区分存储类型:可编程Flash(支持反复擦写)优于OTP型(单次写入)。RTOS内核及中间件会占用较多代码空间RAM容量:建议
- 嵌入式全栈面试指南:TCP/IP、C 语言基础、STM32 外设与 RT‑Thread
作为嵌入式工程师,面试时往往不仅要展示基础编程能力,还要兼具网络协议、硬件驱动、实时操作系统(RTOS)等方面的知识深度。本文将从TCP/IP协议、C语言核心基础、STM32IO与外设驱动、RT‑Thread及其多任务/IPC四大模块进行全面讲解,并在每个模块末尾附上常见面试题,助你系统备考。一、TCP/IP协议1.1TCP/IP五层模型概述嵌入式网络开发中,掌握TCP/IP的分层架构和每层的关键
- 3-2-1 ARM架构简明教程:硬件架构与汇编指令
2402_86608154
freertosarm开发架构硬件架构
3-2-1ARM架构简明教程:硬件架构与汇编指令1.为什么要学习ARM架构?在学习RTOS(实时操作系统)或者单片机编程的时候,我们经常会遇到任务栈(Stack)、任务调度等概念,而这些都与CPU的架构密切相关。只有深入理解ARM处理器的架构,你才能真正掌握RTOS的核心。今天,我们就从ARM硬件架构和基础汇编指令这两个方面,来快速入门ARM架构。2.ARM处理器的架构2.1计算机的组成如果你曾经
- NXP iMX8MM Cortex-M4 核心 GPT Capture 测试
toradexsh
ARMNXPFreeRTOSGPTiMX8MM
ByToradex秦海1).简介NXPi.MX8系列处理器均为异构多核架构SoC,除了可以运行Linux等复杂操作系统的Cortax-A核心,还包含了可以运行实时操作系统比如FreeRTOS的Cortex-M核心,本文就演示通过NXPi.MX8MM处理器集成的Cortex-M4核心来运行GPT(GeneralPurposeTimer)输入采集功能模块的测试。I.MX8MMini处理器GPT模块硬件
- ESP32入门(三)使用 FreeRTOS 多任务系统实现 LED 点灯控制
乄夜
ESP32入门单片机物联网51单片机嵌入式硬件
在之前的博客中,我们已经学习了ESP32的基础点灯操作以及通过WiFi和浏览器实现远程控制。今天我们将进一步探索ESP32的强大性能,引入FreeRTOS实时操作系统,通过多任务机制实现更复杂的LED控制场景。FreeRTOS作为嵌入式领域应用广泛的实时操作系统,能够帮助我们更高效地管理ESP32的资源,实现多个任务的并行执行。一、FreeRTOS基础概念与ESP32集成优势1.1FreeRTOS
- Linux为什么不是实时操作系统
yt94832
linux大数据运维
Linux操作系统以其强大的功能和广泛的应用被广泛使用,但它并不是一个实时操作系统(RTOS)。本文将详细解释为什么Linux不是实时操作系统,并探讨实时操作系统的关键特性和需求。一、实时操作系统的定义和特性1.1实时操作系统定义实时操作系统是一种在规定时间内对外部事件做出响应的操作系统。RTOS通常用于需要高精度时间控制和高可靠性的数据处理场景,如工业控制、航空航天、汽车电子和电信设备等。1.2
- 国产嵌入式操作系统选型,满足国产化项目需求
一RTOS一
系统选型嵌入式硬件鸿道实时操作系统国产嵌入式操作系统选型
随着国际技术竞争加剧和国产化替代需求的迫切性,嵌入式操作系统作为工业控制、智能装备、轨道交通等领域的核心基础软件,其自主可控性已成为国家安全与产业升级的战略重点。在这一背景下,如何选择一款既能满足技术性能要求,又符合国产化标准的嵌入式操作系统,成为企业和技术团队面临的关键挑战。鸿道Intewell操作系统作为国内领先的工业实时操作系统,凭借其自主可控、高实时性、安全可靠等特性,成为国产化项目的重要
- 职坐标IT培训:嵌入式开发C语言/硬件/RTOS路径
职坐标在线
其他
嵌入式开发技术体系呈现显著的跨学科特征,其学习路径需遵循软硬件协同的底层逻辑。作为技术栈的核心层,C语言编程能力构成了开发基础,学习者需从数据类型、指针操作进阶至内存管理与硬件寄存器访问,建立与底层硬件交互的代码思维。硬件电路设计环节则聚焦数字电路原理与EDA工具应用,重点理解GPIO、UART等接口电路设计规范,为后续设备驱动开发奠定物理层认知基础。RTOS实时操作系统的学习路径包含任务调度机制
- Java序列化进阶篇
g21121
java序列化
1.transient
类一旦实现了Serializable 接口即被声明为可序列化,然而某些情况下并不是所有的属性都需要序列化,想要人为的去阻止这些属性被序列化,就需要用到transient 关键字。
- escape()、encodeURI()、encodeURIComponent()区别详解
aigo
JavaScriptWeb
原文:http://blog.sina.com.cn/s/blog_4586764e0101khi0.html
JavaScript中有三个可以对字符串编码的函数,分别是: escape,encodeURI,encodeURIComponent,相应3个解码函数:,decodeURI,decodeURIComponent 。
下面简单介绍一下它们的区别
1 escape()函
- ArcgisEngine实现对地图的放大、缩小和平移
Cb123456
添加矢量数据对地图的放大、缩小和平移Engine
ArcgisEngine实现对地图的放大、缩小和平移:
个人觉得是平移,不过网上的都是漫游,通俗的说就是把一个地图对象从一边拉到另一边而已。就看人说话吧.
具体实现:
一、引入命名空间
using ESRI.ArcGIS.Geometry;
using ESRI.ArcGIS.Controls;
二、代码实现.
- Java集合框架概述
天子之骄
Java集合框架概述
集合框架
集合框架可以理解为一个容器,该容器主要指映射(map)、集合(set)、数组(array)和列表(list)等抽象数据结构。
从本质上来说,Java集合框架的主要组成是用来操作对象的接口。不同接口描述不同的数据类型。
简单介绍:
Collection接口是最基本的接口,它定义了List和Set,List又定义了LinkLi
- 旗正4.0页面跳转传值问题
何必如此
javajsp
跳转和成功提示
a) 成功字段非空forward
成功字段非空forward,不会弹出成功字段,为jsp转发,页面能超链接传值,传输变量时需要拼接。接拼接方式list.jsp?test="+strweightUnit+"或list.jsp?test="+weightUnit+&qu
- 全网唯一:移动互联网服务器端开发课程
cocos2d-x小菜
web开发移动开发移动端开发移动互联程序员
移动互联网时代来了! App市场爆发式增长为Web开发程序员带来新一轮机遇,近两年新增创业者,几乎全部选择了移动互联网项目!传统互联网企业中超过98%的门户网站已经或者正在从单一的网站入口转向PC、手机、Pad、智能电视等多端全平台兼容体系。据统计,AppStore中超过85%的App项目都选择了PHP作为后端程
- Log4J通用配置|注意问题 笔记
7454103
DAOapachetomcatlog4jWeb
关于日志的等级 那些去 百度就知道了!
这几天 要搭个新框架 配置了 日志 记下来 !做个备忘!
#这里定义能显示到的最低级别,若定义到INFO级别,则看不到DEBUG级别的信息了~!
log4j.rootLogger=INFO,allLog
# DAO层 log记录到dao.log 控制台 和 总日志文件
log4j.logger.DAO=INFO,dao,C
- SQLServer TCP/IP 连接失败问题 ---SQL Server Configuration Manager
darkranger
sqlcwindowsSQL ServerXP
当你安装完之后,连接数据库的时候可能会发现你的TCP/IP 没有启动..
发现需要启动客户端协议 : TCP/IP
需要打开 SQL Server Configuration Manager...
却发现无法打开 SQL Server Configuration Manager..??
解决方法: C:\WINDOWS\system32目录搜索framedyn.
- [置顶] 做有中国特色的程序员
aijuans
程序员
从出版业说起 网络作品排到靠前的,都不会太难看,一般人不爱看某部作品也是因为不喜欢这个类型,而此人也不会全不喜欢这些网络作品。究其原因,是因为网络作品都是让人先白看的,看的好了才出了头。而纸质作品就不一定了,排行榜靠前的,有好作品,也有垃圾。 许多大牛都是写了博客,后来出了书。这些书也都不次,可能有人让为不好,是因为技术书不像小说,小说在读故事,技术书是在学知识或温习知识,有些技术书读得可
- document.domain 跨域问题
avords
document
document.domain用来得到当前网页的域名。比如在地址栏里输入:javascript:alert(document.domain); //www.315ta.com我们也可以给document.domain属性赋值,不过是有限制的,你只能赋成当前的域名或者基础域名。比如:javascript:alert(document.domain = "315ta.com");
- 关于管理软件的一些思考
houxinyou
管理
工作好多看年了,一直在做管理软件,不知道是我最开始做的时候产生了一些惯性的思维,还是现在接触的管理软件水平有所下降.换过好多年公司,越来越感觉现在的管理软件做的越来越乱.
在我看来,管理软件不论是以前的结构化编程,还是现在的面向对象编程,不管是CS模式,还是BS模式.模块的划分是很重要的.当然,模块的划分有很多种方式.我只是以我自己的划分方式来说一下.
做为管理软件,就像现在讲究MVC这
- NoSQL数据库之Redis数据库管理(String类型和hash类型)
bijian1013
redis数据库NoSQL
一.Redis的数据类型
1.String类型及操作
String是最简单的类型,一个key对应一个value,string类型是二进制安全的。Redis的string可以包含任何数据,比如jpg图片或者序列化的对象。
Set方法:设置key对应的值为string类型的value
- Tomcat 一些技巧
征客丶
javatomcatdos
以下操作都是在windows 环境下
一、Tomcat 启动时配置 JAVA_HOME
在 tomcat 安装目录,bin 文件夹下的 catalina.bat 或 setclasspath.bat 中添加
set JAVA_HOME=JAVA 安装目录
set JRE_HOME=JAVA 安装目录/jre
即可;
二、查看Tomcat 版本
在 tomcat 安装目
- 【Spark七十二】Spark的日志配置
bit1129
spark
在测试Spark Streaming时,大量的日志显示到控制台,影响了Spark Streaming程序代码的输出结果的查看(代码中通过println将输出打印到控制台上),可以通过修改Spark的日志配置的方式,不让Spark Streaming把它的日志显示在console
在Spark的conf目录下,把log4j.properties.template修改为log4j.p
- Haskell版冒泡排序
bookjovi
冒泡排序haskell
面试的时候问的比较多的算法题要么是binary search,要么是冒泡排序,真的不想用写C写冒泡排序了,贴上个Haskell版的,思维简单,代码简单,下次谁要是再要我用C写冒泡排序,直接上个haskell版的,让他自己去理解吧。
sort [] = []
sort [x] = [x]
sort (x:x1:xs)
| x>x1 = x1:so
- java 路径 配置文件读取
bro_feng
java
这几天做一个项目,关于路径做如下笔记,有需要供参考。
取工程内的文件,一般都要用相对路径,这个自然不用多说。
在src统计目录建配置文件目录res,在res中放入配置文件。
读取文件使用方式:
1. MyTest.class.getResourceAsStream("/res/xx.properties")
2. properties.load(MyTest.
- 读《研磨设计模式》-代码笔记-简单工厂模式
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* 个人理解:简单工厂模式就是IOC;
* 客户端要用到某一对象,本来是由客户创建的,现在改成由工厂创建,客户直接取就好了
*/
interface IProduct {
- SVN与JIRA的关联
chenyu19891124
SVN
SVN与JIRA的关联一直都没能装成功,今天凝聚心思花了一天时间整合好了。下面是自己整理的步骤:
一、搭建好SVN环境,尤其是要把SVN的服务注册成系统服务
二、装好JIRA,自己用是jira-4.3.4破解版
三、下载SVN与JIRA的插件并解压,然后拷贝插件包下lib包里的三个jar,放到Atlassian\JIRA 4.3.4\atlassian-jira\WEB-INF\lib下,再
- JWFDv0.96 最新设计思路
comsci
数据结构算法工作企业应用公告
随着工作流技术的发展,工作流产品的应用范围也不断的在扩展,开始进入了像金融行业(我已经看到国有四大商业银行的工作流产品招标公告了),实时生产控制和其它比较重要的工程领域,而
- vi 保存复制内容格式粘贴
daizj
vi粘贴复制保存原格式不变形
vi是linux中非常好用的文本编辑工具,功能强大无比,但对于复制带有缩进格式的内容时,粘贴的时候内容错位很严重,不会按照复制时的格式排版,vi能不能在粘贴时,按复制进的格式进行粘贴呢? 答案是肯定的,vi有一个很强大的命令可以实现此功能 。
在命令模式输入:set paste,则进入paste模式,这样再进行粘贴时
- shell脚本运行时报错误:/bin/bash^M: bad interpreter 的解决办法
dongwei_6688
shell脚本
出现原因:windows上写的脚本,直接拷贝到linux系统上运行由于格式不兼容导致
解决办法:
1. 比如文件名为myshell.sh,vim myshell.sh
2. 执行vim中的命令 : set ff?查看文件格式,如果显示fileformat=dos,证明文件格式有问题
3. 执行vim中的命令 :set fileformat=unix 将文件格式改过来就可以了,然后:w
- 高一上学期难记忆单词
dcj3sjt126com
wordenglish
honest 诚实的;正直的
argue 争论
classical 古典的
hammer 锤子
share 分享;共有
sorrow 悲哀;悲痛
adventure 冒险
error 错误;差错
closet 壁橱;储藏室
pronounce 发音;宣告
repeat 重做;重复
majority 大多数;大半
native 本国的,本地的,本国
- hibernate查询返回DTO对象,DTO封装了多个pojo对象的属性
frankco
POJOhibernate查询DTO
DTO-数据传输对象;pojo-最纯粹的java对象与数据库中的表一一对应。
简单讲:DTO起到业务数据的传递作用,pojo则与持久层数据库打交道。
有时候我们需要查询返回DTO对象,因为DTO
- Partition List
hcx2013
partition
Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x.
You should preserve the original relative order of th
- Spring MVC测试框架详解——客户端测试
jinnianshilongnian
上一篇《Spring MVC测试框架详解——服务端测试》已经介绍了服务端测试,接下来再看看如果测试Rest客户端,对于客户端测试以前经常使用的方法是启动一个内嵌的jetty/tomcat容器,然后发送真实的请求到相应的控制器;这种方式的缺点就是速度慢;自Spring 3.2开始提供了对RestTemplate的模拟服务器测试方式,也就是说使用RestTemplate测试时无须启动服务器,而是模拟一
- 关于推荐个人观点
liyonghui160com
推荐系统关于推荐个人观点
回想起来,我也做推荐了3年多了,最近公司做了调整招聘了很多算法工程师,以为需要多么高大上的算法才能搭建起来的,从实践中走过来,我只想说【不是这样的】
第一次接触推荐系统是在四年前入职的时候,那时候,机器学习和大数据都是没有的概念,什么大数据处理开源软件根本不存在,我们用多台计算机web程序记录用户行为,用.net的w
- 不间断旋转的动画
pangyulei
动画
CABasicAnimation* rotationAnimation;
rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
rotationAnimation.toValue = [NSNumber numberWithFloat: M
- 自定义annotation
sha1064616837
javaenumannotationreflect
对象有的属性在页面上可编辑,有的属性在页面只可读,以前都是我们在页面上写死的,时间一久有时候会混乱,此处通过自定义annotation在类属性中定义。越来越发现Java的Annotation真心很强大,可以帮我们省去很多代码,让代码看上去简洁。
下面这个例子 主要用到了
1.自定义annotation:@interface,以及几个配合着自定义注解使用的几个注解
2.简单的反射
3.枚举
- Spring 源码
up2pu
spring
1.Spring源代码
https://github.com/SpringSource/spring-framework/branches/3.2.x
注:兼容svn检出
2.运行脚本
import-into-eclipse.bat
注:需要设置JAVA_HOME为jdk 1.7
build.gradle
compileJava {
sourceCompatibilit
- 利用word分词来计算文本相似度
yangshangchuan
wordword分词文本相似度余弦相似度简单共有词
word分词提供了多种文本相似度计算方式:
方式一:余弦相似度,通过计算两个向量的夹角余弦值来评估他们的相似度
实现类:org.apdplat.word.analysis.CosineTextSimilarity
用法如下:
String text1 = "我爱购物";
String text2 = "我爱读书";
String text3 =