标签: embedded-linux

如何在linux中的客户端CIFS(samba)中禁用缓存

开发了一个应用程序,以2.6.10内核的目标运行.Windows计算机上的共享文件夹通过以下命令安装:

mount -t cifs -o username=xxx,password=xxx,forcedirectio //192.168.170.67/57 /fsRecord
Run Code Online (Sandbox Code Playgroud)

从命令选项中可以理解forcedirectio,我想在客户端禁用缓存.但我不能.

目标上的可用RAM量为40 MB.当我复制大小约10MB的文件时,可用RAM大小减少到30 MB.

内核2.6.10使用cifs.1.28.我还将oplockEnabled设置为0(在源代码和/ proc/fs/cifs/OplockEnabled中).但它并没有停止缓存.如何在cifs客户端上禁用缓存?

samba caching cifs embedded-linux

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

qemu:未捕获的目标信号11(分段故障)

在刮擦盒内我正在执行git clone,收到以下错误:

qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Run Code Online (Sandbox Code Playgroud)

错误:

/pi$ sb2 -t rfs-raspbian -eR git clone git://github.com/danwinship/glib.git
Cloning into 'glib'...
remote: Counting objects: 72484, done.
remote: Compressing objects: 100% (11555/11555), done.
remote: Total 72484 (delta 61357), reused 71916 (delta 60808)
Receiving objects: 100% (72484/72484), 28.86 MiB | 59 KiB/s, done.
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
error: index-pack died of signal 11
fatal: index-pack failed
Run Code Online (Sandbox Code Playgroud)

安装QEmu版本:

qemu-arm -version  
qemu-arm version 1.3.90, Copyright …
Run Code Online (Sandbox Code Playgroud)

qemu embedded-linux scratchbox

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

什么是设备树?优点和缺点?

什么是Linux中的设备树?设备树的优点和缺点是什么?

如果有人详细了解设备树,请帮助回答上述问题.

linux linux-kernel embedded-linux device-tree

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

如何在解压缩失败时找到ARM Linux入口点?

我试图通过U-boot在i.MX6的自定义板上启动Linux(CPU内核是ARM Cortex A9)

我们似乎成功移植了Das U-Boot(2009.08).但是在最后的U-Boot消息中启动Linux失败:"启动内核......"

这是我的相关环境:

bootargs=console=ttymxc1,115200 vmalloc=400M root=/dev/mmcblk0p1 rootwait consoleblank=0 earlyprintk video=mxcfb0:dev=lcd,LCD-ORTUS,if=RGB24 video=mxcfb1:dev=hdmi,1280x720M@60,if=RGB24 calibration tsdev=tsc2004 fbmem=10M,28M
bootcmd=ext2load mmc 0:1 10800000 /boot/uImage ; bootm 10800000
Run Code Online (Sandbox Code Playgroud)

启动输出是

Loading file "/boot/uImage" from mmc device 0:1 (xxa1)  
4043552 bytes read  
## Booting kernel from Legacy Image at 10800000 ...  
   Image Name:   Linux-3.0.35  
   Image Type:   ARM Linux Kernel Image (uncompressed)  
   Data Size:    4043488 Bytes =  3.9 MB  
   Load Address: 10008000  
   Entry Point:  10008000  
   Verifying Checksum ... OK  
   Loading Kernel Image ... OK  
OK  

Starting …
Run Code Online (Sandbox Code Playgroud)

boot arm linux-kernel embedded-linux u-boot

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

擦除Flash NOR:ioctl(MEMUNLOCK)返回状态?

我正试图用C语言中的Linux MTD驱动程序擦除NOR闪存......

我对来自ioctl(MEMUNLOCK)调用的返回状态感到困惑,即使ioctl(MEMERASE)在它之后成功也会返回错误.

以下代码显示警告消息但有效(即Flash块已被删除):

int erase_MTD_Pages(int fd, size_t size, off_t offset)
{
    mtd_info_t   mtd_info;
    erase_info_t ei;

    ioctl(fd, MEMGETINFO, &mtd_info);
    ei.length = mtd_info.erasesize;

    for(ei.start = offset; ei.start < (offset+size); ei.start += mtd_info.erasesize) {
        if(ioctl(fd, MEMUNLOCK, &ei) < 0)
        {
//          logPrintf(FAILURE, "[Flash] Can not unlock MTD (MEMUNLOCK, errno=%d)!\n", errno);
//          return RETURN_FILE_ERROR;
            logPrintf(WARNING, "[Flash] Can not unlock MTD (MEMUNLOCK, errno=%d)!\n", errno);

        }
        if(ioctl(fd, MEMERASE, &ei) < 0)
        {
            logPrintf(FAILURE, "[Flash] Can not erase MTD (MEMERASE, errno=%d)!\n", errno); …
Run Code Online (Sandbox Code Playgroud)

c flash-memory embedded-linux

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

如何检查内核中是否启用了SMP?

我想知道如何在运行的计算机上检查内核是否配置为SMP?当然,我可以查看内核.config文件并进行搜索。但是,问题是,我没有源代码,如何检查SMP配置?是否有任何proc文件要检查?

下面说我没有多核:

#cat /proc/cpuinfo

processor               : 1
cpu model               : Broadcom BMIPS5000 V1.1  FPU V0.1
BogoMIPS                : 651.26
cpu MHz                 : 1305.018
wait instruction        : yes
microsecond timers      : yes
tlb_entries             : 64
extra interrupt vector  : yes
hardware watchpoint     : no
ASEs implemented        :
shadow register sets    : 1
kscratch registers      : 0
core                    : 0
VCED exceptions         : not available
VCEI exceptions         : not available
Run Code Online (Sandbox Code Playgroud)

输出为uname -a

Linux 136.170.193.3 3.3.8-2.4 #2 SMP …
Run Code Online (Sandbox Code Playgroud)

linux-kernel embedded-linux

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

保护OPKG存储库

我正在设置一个嵌入式Linux设备使用的OPKG存储库.我们希望保护服务器,以便只有我们的设备才能访问这些软件包.除了对http代理用户名和密码的一些引用之外,我找不到任何有关如何执行此操作的信息.有没有办法实现这一目标?我相信opkg存储库使用与ipkg相同的系统.

security package-managers embedded-linux opkg

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

在ubuntu core 14.04上安装libboost-all-dev时发生依赖项故障

有人知道为什么我在“ sudo apt-get install libboost-all-dev”之后得到以下内容:

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 libboost-all-dev : Depends: libboost-context-dev but it is not going to be installed
                    Depends: libboost-coroutine-dev but it is not going to be …
Run Code Online (Sandbox Code Playgroud)

linux boost embedded-linux ubuntu-14.04

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

如何列出用于使用bitbake构建特定包的所有.bb和.bbappend文件?

让我们考虑一下"虚拟/内核"包.我想知道构建此包时涉及哪些.bb和.bbappend文件.

我知道我可以通过以下方式获取包名:

bitbake -e virtual/kernel | grep ^ BP =

这个命令给了我用于构建虚拟/内核的包的名称,在我的例子中linux-fslc-4.0+gitAUTOINC+19ebefd40a.但是,我不知道如何获取用于构建linux-fslc-4.0+gitAUTOINC+19ebefd40a程序包的.bb和.bbappend文件列表(包括其位置).

linux embedded-linux bitbake yocto

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

如何在u-boot中禁用串行控制台(非内核)

我正在为英特尔爱迪生构建Yocto图像.

图像的一个组件是u-boot,带有Edison特定的补丁.默认情况下,Edison的UART端口用于u-boot控制台.我想禁用此功能,但仅限于串行接口(u-boot也会侦听USB并且需要保留).

我主要担心的是UART端口上的" 按任意键停止自动引导 "功能.我需要此端口来连接可能在主设备启动过程中发送内容的附件.

我该如何处理这个问题?是否有环境变量,或者我是否需要修改源?

提前致谢!

linux embedded-linux u-boot yocto intel-edison

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