小编ato*_*tom的帖子

找到XOR的最低组合

请考虑以下代码:

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

int main (int argc, char *argv[])
{
  time_t seed;
  time (&seed);

  srand (seed);

  int i, j, k, l;

  // init random values s1 .. s8

  int s[8];
  for (l = 0; l < 8; l++) s[l] = rand ();

  // zero result

  int r[16];
  for (j = 0; j < 16; j++) r[j] = 0;

  // do 100 random xor functions

  for (i = 0; i < 100; i++)
  {
    // generates random …
Run Code Online (Sandbox Code Playgroud)

math optimization

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

OpenCL 内核中的运算符重载

我从 CUDA 转移到 OpenCL。

在 CUDA 中,我能够进行运算符重载:

__device__ bool operator != (const uint2 a, const uint b) 
{ 
    return ((a.x != b) && (a.y != b)); 
}
Run Code Online (Sandbox Code Playgroud)

我可以在 OpenCL 内核中做同样的事情吗?

c++ opencl

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

创建write()阻塞的场景

我有这个简单的C程序:

#include <stdio.h>

int main (int argc, char *argv[])
{
  printf ("Hello, world\n");

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

如果我strace编译的程序printf()变为write():

$ strace ./hw > x
execve("./hw", ["./hw"], [/* 19 vars */]) = 0
...
write(1, "Hello, world\n", 13)          = 13
...
Run Code Online (Sandbox Code Playgroud)

我的问题如下:我希望操作系统在执行write()调用后阻止程序执行.作为一个简单的非root用户,是否有可能创建这样的场景?请注意,我无法更改程序代码.

我的直觉告诉我应该,但我无法找到解决方案.想象一下write()会写入一个文件描述符,该文件描述符是一个无缓冲的字符设备.这样的设备,不会强制write()阻塞吗?

c linux blocking

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

标签 统计

blocking ×1

c ×1

c++ ×1

linux ×1

math ×1

opencl ×1

optimization ×1