标签: bsp

BSP与设备驱动程序

虽然理解每一个(或许不是),但看起来我远远不了解两者之间的实际差异.

根据我的理解,BSP是一个驱动程序和配置设置包,允许内核映像启动板(并且是其中的一部分).单个设备驱动程序在特定组件(HW)上运行,一侧与核心内核连接,另一侧与设备本身连接.

看看Linux内核,我不清楚BSP角色的起源和设备驱动程序角色的结束位置.具体来说,我习惯于每个图像每个板看到一个BSP,但是,通用Linux内核可以加载到具有相同图像的任何架构系列(很明显,对于不同的系列,有不同的图像:x86,amd64,arm, etc ...),其中特定的板和外围设备驱动程序是从initrd按需加载的.

常见的Linux内核发行版是否有BSP?或者BSP是否与特殊案例板相关?

这种行为在其他内核上是否相似?VxWorks的?

最后一个,合并不同的BSP/s以生成适合不同电路板的单个图像是很常见的吗?

vxworks bsp device-driver linux-device-driver

28
推荐指数
3
解决办法
2万
查看次数

内核恐慌:找不到可用的初始化。尝试将 init= 选项传递给内核

我刚刚开始了解内核的工作原理和内部结构,首先,我正在尝试构建内核并启动它。

我使用 qemu 作为 x86 架构的模拟器。

我正在关注这篇文章(虽然是针对手臂的):http : //www.kaizou.org/2016/09/boot-minimal-linux-qemu/

我使用以下命令构建了内核:

cd kernel_4.9
make x86_64-defconfig
make -j8
Run Code Online (Sandbox Code Playgroud)

这给了我 bzImage。现在我开发了一个initramfshello world 作为可执行文件的虚拟对象。这是init.c

#include <stdio.h>

void main()
{
    printf("Tiny init - Hello World...\n");
    while(1);
}
Run Code Online (Sandbox Code Playgroud)

打包 initramfs

gcc -static init.c -o init
chmod +x init
echo init | cpio -o --format=newc > initramfs
Run Code Online (Sandbox Code Playgroud)

现在运行 qemu :

qemu-system-x86_64 -kernel ~/data/linux/arch/x86/boot/bzImage -append 'console=ttyS0' -serial stdio -initrd ~/data/linux/arch/x86/boot/initramfs
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

[    1.158556] Write protecting the kernel text: 8528k
[    1.158842] Write protecting …
Run Code Online (Sandbox Code Playgroud)

boot qemu bsp linux-kernel embedded-linux

6
推荐指数
1
解决办法
2万
查看次数

ARM的Android BSP(Source)示例

我正在寻找一个ARM处理器版本的Android BSP来为我的一个实验板移植它.我在哪里可以下载这个?

boot android arm bsp

5
推荐指数
1
解决办法
1万
查看次数

BSP地牢生成的简单例子

我最初试图按照这个算法在 C# 中创建一个简单的 roguelike 地牢。但我想我只是太愚蠢了,因为我的结果总是一团糟。

然后我切换到我自己的算法,它产生了不太好但半可识别的地牢结果。

有没有人有任何以 BSP 方式执行此操作的示例,如链接文章中所述?最好不要被一堆游戏细节/库调用所困扰,因为(再次)我很愚蠢。

(如果你特别受虐并且希望我发布我拥有的代码,我可以,但我认为这对于一个 SO 问题来说太过分了。)

c# algorithm bsp

5
推荐指数
1
解决办法
1万
查看次数

嵌入式板级支持包

据我了解,BSP(板级支持包)包含引导加载程序,内核和设备驱动程序,可帮助操作系统在HW上工作.但我很困惑,因为操作系统还包含一个内核.那么OS中的内核和BSP中的内核有什么区别?

embedded bsp

5
推荐指数
2
解决办法
1244
查看次数

ABAP:如何将文本写入本地文件

我试图使用以下代码将文本写入本地文件:

data: fname(60), text type string value 'la la la'.
fname = 'myfile.txt'.
OPEN DATASET fname FOR OUTPUT IN TEXT MODE encoding default.
TRANSFER text TO fname.
CLOSE DATASET fname.
write 'done'.
Run Code Online (Sandbox Code Playgroud)

程序运行正常,执行后出现"完成".但是我在PC上找不到文本文件"myfile.txt"(它不在SAP工作目录中).

附加信息 我使用FM GUI_DOWNLOAD得到了这个,但是我必须使用OPEN DATASET,TRANSFER方法,因为我在后台程序中写这个(由BSP使用SUBMIT调用).

io sap abap bsp

4
推荐指数
2
解决办法
2万
查看次数

如何在ABAP,SAP中编写此返回方法?

我习惯了JAVA,因此无法在ABAP中编写此代码。

我用两个参数调用一个方法。它应该返回一个数字,所以我可以保存它。

我想要的是..

int result = generate_num(40,5);

int generate_num(int thisNum, int newDigit){
    return thisNum * 10 + newDigit;
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经在ABAP中进行了尝试。

//声明的方法

methods GENERATE_NUM
importing
  !thisNum type I
  !NEWDIGIT type DIGIT_NUMBER_VALUE.
Run Code Online (Sandbox Code Playgroud)

//调用方法

CALL METHOD me->Generate_NUM
   EXPORTING
       thisNUm = 40
       newDigit = 5.
Run Code Online (Sandbox Code Playgroud)

//方法本身

METHOD GENERATE_NUM.


DATA: newNum type i.

  If thisnum < 0.
    newNum = thisnum * 10 - newdigit.
  Else.
    newNum = thisnum * 10 + newdigit.
  ENDIF.

  RETURNING VALUE(newNum).   

ENDMETHOD.
Run Code Online (Sandbox Code Playgroud)

但是我迷上了这段代码,不知道如何返回值以及如何将其保存在另一个变量中。

java methods abap return bsp

4
推荐指数
1
解决办法
5092
查看次数

有没有人有BSP的例子?

有没有人有一个他们可以分享或了解的在ThreeJS中使用BSP树的例子?我正在寻找创建一个地形splatting示例,并希望使用BSP(或可能是八叉树??)来帮助加快渲染速度.

非常感谢

bsp three.js

4
推荐指数
1
解决办法
2343
查看次数

Yocto 中层和元数据之间的区别

我正在尝试理解 yocto 术语。我知道recipe是bitbake工具用来获取源代码、配置、编译和生成包(软件组件)的一组指令。

元数据是配置文件 ( .conf )、食谱 ( .bb 和 .bbappend ) 、类 ( .bbclass ) 和包含 ( .inc ) 的集合。

我不明白的是“层”这个词。术语“层”和“元数据”是相同的还是不同的

例如: meta-fsl-arm :这是层还是元数据。

bsp embedded-linux yocto

3
推荐指数
1
解决办法
3324
查看次数

三角网格的Kd树太慢了

Kd算法从创建根BSP节点开始,通过对基元数组(三角形,球体......)进行分区,以创建用于创建其两个子树的两个新数组(左和右基元).

通过将给定的基元数组分成两个数组来计算左和右基元.通过取每个三角形的间隔的中点(投影到给定轴(x,y或z)上)的中值来计算分割平面位置.

例如,具有x坐标的三角形:1,2,3具有中点1 =(3-1)/ 2(沿着x轴)具有x坐标的三角形:2,3,8具有中点3 = (8-2)/ 2(沿x轴)具有x坐标的三角形:4,3,8具有中点2.5 =(8-3)/ 2(沿x轴)包含这些的原始数组三个三角形由平面划分,平行于x = 2.5(中位数)平行于yz平面.生成的左基元数组包含三个三角形,生成的右基元数组包含三个三角形.

具有左和右基元的两个结果阵列用于构造Kd节点的左子树和右子树(基元仅存储在叶节点处).

对于左子树:

If (the left primitives are empty) then the left subtree points to NULL
else if (the number of left primitives is smaller than the minimal number || the depth == 1) then the left subtree is a leaf node
else the left subtree is another tree.

create the left subtree with the left primitives along the axis (++axis % 3) with --depth as depth and the …
Run Code Online (Sandbox Code Playgroud)

raytracing bsp

2
推荐指数
1
解决办法
4189
查看次数

通过元层覆盖Yocto类

感谢您的时间和支持

我打算使用swupdate进行更新.所以,我需要创建一个额外的分区,我需要在其中存储恢复分区.

poky/meta/classes/image-live.bbclass
Run Code Online (Sandbox Code Playgroud)

是创建分区并闪烁根文件系统的类.我已经更新了上面的文件以创建另一个分区并存储swupdate根文件系统.

如何在我自己的BSP层中覆盖此类,我不想触及poky源代码..

linux bsp embedded-linux yocto

2
推荐指数
1
解决办法
1920
查看次数

HAL、BSP、驱动程序

一些背景:我正在研究具有微控制器目标的嵌入式系统。我在这里的目的是澄清可用于代码存储库名称的术语。我专注于该文章中的低级命名,它对我来说代表面向目标的代码(而不是面向应用程序的高级代码)。

我在网络和论坛上循环,似乎没有人明确定义这些术语之间的区别:HAL、BSP 与驱动程序。

根据我的说法,我的所有三个术语在理论上都是等效的,但人们似乎会区分 HAL 是为 MCU 驱动程序(例如 UART、GPIO 等)保留的,而 BSP 是为外部外设驱动程序(例如加速度计)保留的、EEPROM、...)。

有人可以帮我澄清一下吗?此外,您能否提及您的答案是基于您的个人意见,还是基于社区/公司/标准/其他内容的推理/基本原理?

感谢您的时间,

hal driver bsp

2
推荐指数
1
解决办法
1234
查看次数

libusb 支持为 Freescale imx6 板构建 Yocto

我目前正在使用 Yocto 创建替代 BSP 来替换现有的 BSP。我是 Yocto 的新手,我需要知道如何向 Yocto 添加 libusb 支持以在连接时检测蓝牙适配器。

问候, 帕万

usb bluetooth bsp libusb yocto

1
推荐指数
1
解决办法
1660
查看次数