小编Mik*_*ike的帖子

如何调整NAPI的投票期?

我可以理解Linux中的NAPI会从中断模式转换为轮询模式以处理高数据包速率.

NAPI使用权重来决定每个轮询周期中要处理的数据包数量; 它还确保每个轮询周期中的数据包处理少于一个jiffies.

但是,我无法在任何地方找到(谷歌)NAPI的民意调查期间?我们可以将民意调查期改为我们想要的任何值吗?

非常感谢您的任何帮助!


根据我的观察,似乎NAPI的民意调查时间是2秒,但我想确保我的观察是正确的.

linux networking linux-device-driver

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

CPU乱序效果的测试程序

我写了一个多线程程序来演示英特尔处理器的乱序效果.该计划附在本文末尾.预期的结果应该是当handler1将x打印为42或0时.但是,实际结果总是为42,这意味着不会发生乱序效应.

我使用命令"gcc -pthread -O0 out-of-order-test.c"编译了程序.我在Intel IvyBridge处理器Intel(R)上运行Ubuntu 12.04 LTS(Linux内核3.8.0-29-通用)上的编译程序)Xeon(R)CPU E5-1650 v2.

有谁知道我应该怎么做才能看到乱序效果?

#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>

int f = 0, x = 0;

void* handler1(void *data)
{
    while (f == 0);
    // Memory fence required here
    printf("%d\n", x);
}

void* handler2(void *data)
{
    x = 42;
    // Memory fence required here
    f = 1;
}

int main(int argc, char argv[])
{
    pthread_t tid1, tid2;

    pthread_create(&tid1, NULL, handler1, NULL);
    pthread_create(&tid2, NULL, handler2, NULL);

    sleep(1);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c x86 synchronization memory-barriers barrier

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

AUTOSAR中支持的最大任务数

AUTOSAR兼容系统支持的最大任务数是多少?

在Linux中,我可以检查支持的最大进程ID,以获得支持的最大任务数.

但是,我找不到任何说明AUTOSAR支持的最大任务数的源.

非常感谢您的帮助!

autosar

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

我将a值设置为字符串末尾时出现分段错误

我写了一个简单的函数来反转字符串.我尝试不使用char*末尾的最后一个字符'\ 0'为swap分配临时字符.但是,它在*end =*str报告分段错误;

谁有人解释原因?

非常感谢你!

#include<stdio.h>
#include<stdlib.h>
void reverse(char* str)
{
    char* end = str;
    char* i = str;
    char* j = str;
    while(*end)
        ++end;
    j = end;
    *end = *str;
    while(j > i)
    {
        *i = *j;
        ++i;
        *j = *i;
        ++j;
    }
    while(i < end)
    {
        *i = *(i+1);
        ++i;
    }
    *i = '\0';
}

void main(int argc, char* argv[])
{
    char* str_test1;
    char* str_test2;
    str_test1 = (char*) malloc(10);
    str_test2 = (char*) malloc(2);
    str_test1 = "abcdefjhi";
    str_test2 = …
Run Code Online (Sandbox Code Playgroud)

c

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

yaml 补丁文件中 - |- 是什么意思

在此示例(链接)中,它使用配置文件创建类型集群,该配置文件修补了containerd。- |-下划线是什么containerdConfigPatches 意思?

我发现- | yaml 表明这是一个补丁字段。但-下面这句话是什么- |意思呢?

# create a cluster with the local registry enabled in containerd
cat <<EOF | kind create cluster --config=-
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
containerdConfigPatches:
- |-
  [plugins."io.containerd.grpc.v1.cri".registry.mirrors."localhost:${reg_port}"]
    endpoint = ["http://${reg_name}:5000"]
EOF
Run Code Online (Sandbox Code Playgroud)

yaml kubernetes kind

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