草庐IT

Mastering

全部标签

Mastering MapReduce: Essential Techniques for Big Data Processing

1.背景介绍大数据处理是当今世界最热门的话题之一。随着互联网的普及和数字化的推进,人们生活中产生的数据量不断增加。这些数据包括社交媒体、电子邮件、搜索引擎查询、购物行为、传感器数据等等。处理这些大规模、高速、多源的数据,以挖掘其中的知识和洞察力,对于企业和政府机构来说已经成为了一项关键的技术挑战。在这个背景下,MapReduce成为了一种非常重要的大数据处理技术。MapReduce是一种分布式计算模型,可以在大量计算节点上并行处理数据,实现高效的大数据处理。它的核心思想是将数据处理任务分解为多个小任务,每个小任务可以独立在不同的计算节点上运行,最终通过数据分区和数据汇总的方式实现整体的数据处理

《Mastering the FreeRTOS Real Time Kernel》读书笔记(7)事件组

8.事件组之前已经介绍了多任务之间的交流桥梁,包括了队列和信号量。与队列和信号量不同:事件组允许任务在“阻塞”状态下等待一个或多个事件的组合发生。事件组在事件发生时,取消等待同一事件或事件组合的所有任务的阻塞状态。事件组的这些独特属性可用于同步多个任务、向多个任务广播事件、允许任务在“阻塞”状态下等待一组事件中的任何一个事件发生,以及允许任务在阻止状态下等待多个操作完成。事件组还提供了减少应用程序使用的RAM的机会,因为通常可以用单个事件组替换许多二进制信号量。8.2事件组的特性事件“flag”是一个布尔值(1或0),用于指示事件是否发生。事件“group”是一组事件标志。事件标志只能是1或0

《Mastering the FreeRTOS Real Time Kernel》读书笔记(5)中断管理

6.中断管理在读这一章之前一直有一些疑惑,FreeRTOS中的中断是软中断吗,还是将外部硬中断的触发后,导入FreeRTOS的内部进行调度处理。如果是第一种,软中断和第三章讲的任务有区别吗,还是只是优先级比所有任务高。如果是第二种的话,外部中断的服务函数是不是不能写内容了,FreeRTOS的运行和裸机程序水火不容吗?6.1章节介绍事件嵌入式实时系统必须对源自环境的事件做出响应。在不同情景下,都必须判断最佳事件处理实现策略:1.应如何检测事件?通常使用中断,但也可以轮询输入。2.当使用中断时,中断服务例程(ISR)内部应该执行多少处理,外部应该执行多少?通常希望每个ISR尽可能短。3.如何将事件

《Mastering the FreeRTOS Real Time Kernel》读书笔记(6)资源管理

7.资源管理(互斥量)在多任务系统中,如果一个任务开始访问资源,但在从运行状态转换出来之前没有完成访问,则可能会出现错误。如果任务使资源处于不一致状态,则任何其他任务或中断对同一资源的访问都可能导致数据损坏或其他类似问题。这里的资源管理,应该是指计算机的外设资源,比如LCD显示器,寄存器,内存中的数据,甚至包括不确定是否可以重传的函数(线程安全与否)。每个任务都有访问和利用资源的权利,但是需要按照一定的规章制度,来规范特定资源的使用,避免出现争抢,不能仅仅按照内核安排。为了确保始终保持数据一致性,必须使用“互斥”技术管理对任务之间或任务与中断之间共享的资源的访问。7.2关键区域和挂起程序划关键

《Mastering the FreeRTOS Real Time Kernel》读书笔记(4)软定时器

5.软件定时器管理软件定时器由FreeRTOS内核实现,并受其控制。它们不需要硬件支持,也与硬件计时器或硬件计数器无关。软件定时器功能是可选的。包括软件定时器功能:1。作为项目的一部分,构建FreeRTOS源文件FreeRTOS/source/timers.c。2.在FreeRTOSConfig.h中将configUSE_TIMERS设置为1。5.2软件定时器回调函数voidATimerCallback(TimerHandle_txTimer);返回值为void,并将软件计时器的句柄作为其唯一参数。软件定时器回调函数是在启动FreeRTOS调度器时自动创建的任务的上下文中执行的。因此,重要的是

《Mastering the FreeRTOS Real Time Kernel》读书笔记(2)任务管理

3.任务管理如何为每个任务分配处理时间,如何选择在任何给定时间执行何种任务,任务优先级,任务状态。3.2任务功能每个任务必须返回void,并接受一个void类型指针。这些任务一般会写成一个无限循环,由内核来调度,完成任务安排,创建和删除。3.3顶层任务状态由于一般单片机处理器为单核单线程,实际同时只能执行一个任务,被激活的任务状态只有运行和未运行两种,从运行状态切换成休眠(未运行)状态时,其状态(变量、程序指针等)会被保存,以便于恢复。切换任务状态只能由FreeRTOS的调度程序执行,不能由用户操作。3.4创建任务使用FreeRTOS的xTaskCreate()API函数创建任务。这可能是所有

《Mastering the FreeRTOS Real Time Kernel》读书笔记(1)堆内存管理

这是161204的版本,不完全覆盖目前最新版本的内核。0.关于freeRTOS首先提出了了在小型嵌入式系统中为何需要多任务管理的问题,介绍了freeRTOS的用途。然后开始做广告,吹了一波freeRTOS的好处。其中要注意一些关键的名词:任务优先级分配、任务通知、队列、信号量、互斥锁、软定时器、事件组、钩子函数等。这些内容会在后面的章节进行介绍。1.FreeRTOS的文件结构主要介绍在github上下载到的FreeRTOS包含哪些内容。1.2分布可以将freeRTOS看成一个库,或者看成一个软件。其通过配置,可以运行在30多种不同的处理器架构上。而配置Freertos需要通过一个叫做FreeR

Mastering RESTful APIs with Node.js

作者:禅与计算机程序设计艺术1.简介REST(RepresentationalStateTransfer)表述性状态转移是一种基于HTTP协议的软件架构风格,旨在通过设计简单、灵活的接口来提升互联网应用的可伸缩性、可用性及安全性。RESTfulAPI是遵循REST风格设计的API。本教程将介绍如何使用Node.js构建RESTfulAPI并将其部署到服务器上。本教程涉及到的主要技术栈包括:Node.jsExpressMongoDBJWT(JSONWebToken)2.RESTful架构的设计原则URI-UniformResourceIdentifierHATEOAS-Hypermediaast