问题标签 [netbsd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1087 浏览

archlinux - 在 /dev/sdb2 上发现未知的 Linux 发行版:grub configuration dual boot Arch Linux and NetBSD-7.0

我有 Arch Linux/dev/sdb1和 NetBSD-7.0 /dev/sdb2

在 Arch Linux 上,当我运行时sudo grub-mkconfig -o /boot/grub/grub.cfg我收到一条消息,Found unknown Linux distribution on /dev/sdb2但是当我重新启动时,对于那个未知的 Linux 发行版没有 grub 选项,我知道它是 NetBSD-7.0。

重新启动时如何将 NetBSD-7.0 添加到我的 grub 菜单选项中。

有一个类似的帖子,目前正在研究它。

sudo mount -t ufs -o ro,ufstype=ufs2 /dev/sdb2 /mnt/更新:我用(ufstype=44bsd没有工作)安装 NetBSD 分区,然后运行grub-mkconfig -o /boot/grub/grub.cfg,但问题仍然存在。

更新:重新启动并按下c以获取 grub 命令行。以下命令启动 NetBSD-7.0:

跑去ls查看磁盘和分区的正确名称,/dev/sdb2在 Linux 上是(hd0,gpt2)在 Grub 上。然后运行以下内容:

并启动了 NetBSD-7.0。

要将 NetBSD 选项添加到 Grub 菜单,请/etc/grub/40_custom在 Arch Linux 上修改文件,如下所示:

但是,经过40_custom如上修改后,Grub 菜单上不会出现 NetBSD 选项。我不知道为什么。

0 投票
1 回答
91 浏览

libusb - 为什么 libusb-1.0 示例没有在 NetBSD7.0 上打印任何信息?

在 NetBSD7.0 上安装 libusb 1.0.19,使用 root 用户运行示例“listdevs”,无法打印任何信息。(在centos7上运行良好)

我可以确定有 2 个 USB 大容量存储设备。

有人试试吗?应该其他配置吗?

0 投票
1 回答
394 浏览

linux-kernel - 非分页内存的地址转换

内核内存中的许多部分是不可分页的。

  1. 这些区域的页表设置是什么?如何为它们完成逻辑到物理的映射?

  2. 恒等映射和有线内存(不可分页内存)之间有什么关系吗?

0 投票
1 回答
174 浏览

c - NETBSD 3.1 错误 - 在 malloc() 中:警告:递归调用

测试场景是 ping 来 IP 和 ctr+C 交替从脚本调用。

似乎在调用信号处理程序时,ping 在 malloc 内。信号处理程序也称为 malloc 并且 malloc 返回以下警告。在 malloc() 中:警告:递归调用

但是我仍然找不到它是如何导致崩溃的,有人可以解释一下吗

0 投票
0 回答
264 浏览

linux - 硬件中断中的内核崩溃;核心转储显示进程上下文

这是针对 MIPS 处理器上的 NetBSD 的,但也欢迎针对 Linux 的回答。

我看到在接收网络数据包时发生了中断。此硬件中断在存储操作中发现 TLB 未命中并且内核崩溃。当我看到核心转储时,gdb 指向一个进程的 LWP(比如说 ProcA)。

我假设,这个硬件中断可能已经抢占了 ProcA 并开始在 ProcA 的内核堆栈上执行。虽然在堆栈框架中我没有看到任何来自 ProcA 的内容,但我不明白为什么 gdb 仍然指向 ProcA。

0 投票
1 回答
372 浏览

c - netbsd pthread_create SIGABRT

我们尝试将我们的虚拟机移植到Net Bsd 7.0 (amd64) 上。已经成功地从 Linux 移植到 Free BSD 和 Open BSD 等。我们在全新的标准安装 Net BSD 上有几个问题。

  1. 代码使用 gcc 和以下标志编译:CC_OPTIONS=-pedantic -Wall -Wno-trigraphs -Wno-long-long -Wno-variadic-macros -fshort-wchar -x c++ -fPIC -pipe -fno-omit-frame-指针 -g -I"/usr/local"/include -I"$(UAS_SRC)"
    LD_OPTIONS=-shared-libgcc -L"/usr/lib" -L"/usr/local/lib" -L"$( UAS_HOME)vtm/lib"

  2. 当尝试使用pthread_create () 创建线程时,进程会从 libc 运行时接收SIGABRT:gdb backtrace:

    • 在 /usr/lib/libc.so.12 的 _lwp_kill() 中
    • 在 /usr/lib/libc.so.12 的 __lwd_thr_create_stub()
    • 在 /usr/libpthread.so.1 的 _pthread_create() 中
    • 在 /home/../syspsx_nt.cpp 中的 CreerThread2()
  3. 当尝试使用自旋锁时,我们会收到段违规。这是测试用例:

    typedef struct typmttsysnatsynchronisationdirect
    {
    union

      {
      pthread_spinlock_t HandleSpinLock;
      } 选择;
    } *TypMttSysNatSynchronisationDirect;

    TypMttSysNatSynchronisationDirect SynchronisationCourant;
    诠释回应;

    SynchronisationCourant=(TypMttSysNatSynchronisationDirect)malloc(sizeof(struct typmttsysnatsynchronisationdirect));
    if (SynchronisationCourant==NULL)
      返回(0);
    memset(SynchronisationCourant, 0x0, sizeof(struct typmttsysnatsynchronisationdirect));
    响应=pthread_spin_init(&(SynchronisationCourant->Selection.HandleSpinLock), PTHREAD_PROCESS_SHARED);
    如果(响应!=0)
      返回(0);
    响应=pthread_spin_lock(&(SynchronisationCourant->Selection.HandleSpinLock));
    如果(响应!=0)
      返回(0);

当反汇编 pthread_spin_init() 和 pthread_spin_lock() 的代码时,似乎 pthread_spinlock 内部有一个函数指针,它在 pthread_spin_init() 中设置为 NULL,并被 pthread_spinlock() 调用的 pthread_spintrylock() 间接调用。

感谢您的帮助。

0 投票
3 回答
1374 浏览

linux-kernel - 哪个处理器将在多核系统中执行硬件中断

一般来说,硬件中断需要立即处理,至少以便确认它并进行一些第一级处理。据我了解,这不是预定活动。请纠正我。

所以问题是如何选择一个真正执行这个硬件中断处理程序的处理器?

可以为 Linux 和/或 BSD 系统回答这个问题

0 投票
1 回答
491 浏览

clang - NetBSD 上的 Clang 和 -std=libc++?

我正在尝试在 NetBSD 上clang++编译一个程序。libc++Clang 版本是 3.9.0,NetBSD 版本是 7.0.2。编译失败:

<cstddef>存在,但它似乎是 GCC 的:

如果我正确解析pub/NetBSD/NetBSD-release-7/src/external/bsd/libc++ 的索引,则该库可用。当我尝试安装libc++libcxx

带有 libc++ 的 Clang 是 NetBSD 上受支持的配置吗?我们如何在 NetBSD 上使用 Clang 和 libc++?

0 投票
1 回答
166 浏览

arm - Coredump 日志记录技巧

如果核心转储的大小超过 RAM 和闪存,人们通常遵循哪些技术来转储完整的核心转储。比如说,内核大小为 2GB,但我们正好有 2GB 的 RAM 和 1GB 的磁盘空间。

我知道外部 USB 和 tftp 选项。但是,当我们选择这些选项时,可靠性和稳定性很重要。嵌入式人员如何处理这些类型的问题?有哪些可用的技术?

平台:NetBSD、ARM7

谢谢,

帕瓦南

0 投票
1 回答
577 浏览

package - NetBSD 'pkg_add' 无法处理包:禁止

我是使用 NetBSD 的新手,但我已经在 VM 上设置了它,并且目前正在运行一些软件包安装。据我了解,这是通过设置 PKG_PATH 变量然后使用pkg_add实用程序来完成的,但是当我尝试安装任何软件包时,我会收到“禁止”错误消息。

$ PKG_PATH="http://cdn.NetBSD.org/pub/pkgsrc/packages/$(uname -s)/$(uname -m)/$(uname -r|cut -f '1 2' -d. )/All/"
$ export PKG_PATH
$ pkg_add tmux
pkg_add: 无法处理http://cdn.NetBSD.org:80/pub/pkgsrc/packages/NetBSD/amd64 /7.1/All//tmux*: 禁止
pkg_add:没有找到 'tmux' 的 pkg,抱歉。
pkg_add: 1 包添加失败

我已经访问了 URL 并且该包确实存在,它也为我尝试安装的任何包执行此操作。据我所知,机器上的网络很好,所以我有点不知道从这里去哪里。有什么建议么?