小编0x9*_*x90的帖子

strerror描述字符串

C函数strerror返回错误描述字符串,如此处所述.示例字符串

No such file or directory

问题是这些字符串定义在哪里?我查看了我的头文件,但没有看到任何内容.

c linux

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

如何在linux内核中定义和触发我自己的新softirq?

我想在linux内核中创建自己的softirq.这是正确的方法:

init模块中我想触发softirqfrom我将添加一个调用:

394 void open_softirq(int nr, void (*action)(struct softirq_action *))
395 {
396         softirq_vec[nr].action = action;
397 }
Run Code Online (Sandbox Code Playgroud)

在片段中我想提高softirq我将添加一个raise_softirq函数调用:

379 void raise_softirq(unsigned int nr)
380 {
381         unsigned long flags;
382 
383         local_irq_save(flags);
384         raise_softirq_irqoff(nr);
385         local_irq_restore(flags);
386 }
Run Code Online (Sandbox Code Playgroud)

并添加我的新内容softirq:

411 /* PLEASE, avoid to allocate new softirqs, if you need not _really_ high
412    frequency threaded job scheduling. For almost all the purposes
413    tasklets are more than enough. F.e. all …
Run Code Online (Sandbox Code Playgroud)

c android arm linux-kernel softirq

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

glibc - 列表和其他数据结构实现

我填写像我的谷歌搜索技能现在很差,找不到glibc中的列表实现,找到哈希实现但不是列表之一.

是否有任何glibc实现?我不想重新格式化linux内核链表宏并在用户空间中使用它们.

c linux glibc list

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

如何在Matlab中计算样本和总体方差?

我有一个矢量 a

a = [86 100 41 93 75 61 76 92 88 97]
Run Code Online (Sandbox Code Playgroud)

我要计算stdmean通过自己:

>> mean(a)

ans =

   80.9000

>> std(a)^2

ans =

  335.2111
Run Code Online (Sandbox Code Playgroud)

但是,当我这样做时,我得到错误的方差:

>> avg = mean(a)

avg =

   80.9000

>> var = sum(a.^2)/length(a) - avg^2

var =

  301.6900
Run Code Online (Sandbox Code Playgroud)

我在这里想念什么?

为什么sum(a.^2)/length(a) - avg^2 != std(a)^2

statistics matlab

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

为什么我不能在代码中关闭窗口句柄?

我的主要是这两条线,但最后我无法关闭手柄.我试图获得一个窗口矿井weeper的句柄,然后关闭它,但它不起作用.而且我有我需要的所有相关内容.

#include <windows.h>
#include <stdio.h>
Run Code Online (Sandbox Code Playgroud)

在主要

HWND wh = FindWindow("Minesweeper", "Minesweeper");
CloseHandle (wh);
Run Code Online (Sandbox Code Playgroud)

printfwh我看到的价值等同于本次募集间谍++.

我收到了错误

"异常地址:0x7c90e4ff"

我错过了什么?

顺便说一下:如果我改变上面的两行,关闭一个进程的句柄就可以了.

c winapi

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

如何在Mac OS X上设置SMTP服务器?

我使用PHP,我的机器上有mamp.我想在我的PHP代码中发送电子邮件:

<?php
 $to = "recipient@example.com";
 $subject = "Hi!";
 $body = "Hi,\n\nHow are you?";
 if (mail($to, $subject, $body)) {
   echo("<p>Message successfully sent!</p>");
  } else {
   echo("<p>Message delivery failed...</p>");
  }
 ?>
Run Code Online (Sandbox Code Playgroud)

如何在我的mac机器上免费配置邮件服务器?

php email macos mamp osx-mountain-lion

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

如何对2001年IOCCC的获胜者ctk.c代码进行去混淆?

我看过ctk.c混淆代码,但是我怎么能开始对它进行去混淆呢?

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/time.h>
#include <signal.h>
#define m(b)a=b;z=*a;while(*++a){y=*a;*a=z;z=y;}
#define h(u)G=u<<3;printf("\e[%uq",l[u])
#define c(n,s)case n:s;continue
char x[]="((((((((((((((((((((((",w[]=
"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b";char r[]={92,124,47},l[]={2,3,1
,0};char*T[]={"  |","  |","%\\|/%"," %%%",""};char d=1,p=40,o=40,k=0,*a,y,z,g=
-1,G,X,**P=&T[4],f=0;unsigned int s=0;void u(int i){int n;printf(
"\233;%uH\233L%c\233;%uH%c\233;%uH%s\23322;%uH@\23323;%uH \n",*x-*w,r[d],*x+*w
,r[d],X,*P,p+=k,o);if(abs(p-x[21])>=w[21])exit(0);if(g!=G){struct itimerval t=
{0,0,0,0};g+=((g<G)<<1)-1;t.it_interval.tv_usec=t.it_value.tv_usec=72000/((g>>
3)+1);setitimer(0,&t,0);f&&printf("\e[10;%u]",g+24);}f&&putchar(7);s+=(9-w[21]
)*((g>>3)+1);o=p;m(x);m(w);(n=rand())&255||--*w||++*w;if(!(**P&&P++||n&7936)){
while(abs((X=rand()%76)-*x+2)-*w<6);++X;P=T;}(n=rand()&31)<3&&(d=n);!d&&--*x<=
*w&&(++*x,++d)||d==2&&++*x+*w>79&&(--*x,--d);signal(i,u);}void e(){signal(14,
SIG_IGN);printf("\e[0q\ecScore: %u\n",s);system("stty echo -cbreak");}int main
(int C,char**V){atexit(e);(C<2||*V[1]!=113)&&(f=(C=*(int*)getenv("TERM"))==(
int)0x756E696C||C==(int)0x6C696E75);srand(getpid());system("stty -echo cbreak"
);h(0);u(14);for(;;)switch(getchar()){case 113:return 0;case 91:case 98:c(44,k
=-1);case 32:case 110:c(46,k=0);case 93:case 109:c(47,k=1);c(49,h(0));c(50,h(1
));c(51,h(2));c(52,h(3));}} 
Run Code Online (Sandbox Code Playgroud)

http://www.ioccc.org/2001/ctk.hint:

This is a game based on an Apple ][ Print Shop …
Run Code Online (Sandbox Code Playgroud)

c obfuscation deobfuscation

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

如何保护isr和常规函数共享的全局变量?

假设我有function 1一个isr routine,它们共享并更新相同的标志,它们之间没有任何锁定.系统是单线程的.

while将是一个3臂汇编指令,这意味着它不是原子操作,是否可以在非isr和isr函数之间共享一个全局变量而没有任何锁定或保护?

功能1:

while (flag == false);
flag = false;
Run Code Online (Sandbox Code Playgroud)

常规:

do something
flag=true
Run Code Online (Sandbox Code Playgroud)

我不记得有一个Linux内核机制用于锁定可睡眠和非可睡眠的上下文,例如irqkernel thread.


谢谢@artless的答案,这里有一些我不确定的问题:

  1. 有没有办法我不会错过中断?

  2. 内存障碍如何解决问题,当代码在单个cpu上运行时它是否有效?

  3. 在不同情境之间使用障碍时的预期行为是什么?

  4. 能在一段时间内睡觉loop可以解决同步问题吗?

c assembly mutex arm semaphore

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

如何在独立的dll中构建visual studio 2010解决方案?

我有一个visual studio 2010项目,使用静态和动态库(.lib.dll),项目.exe在发布和调试模式下成功编译和构建,代码是c和c ++.

将所有解决方案编译并包装到一个独立.dll文件的正确方法是什么.

我想要一个dll文件,我将能够安全地在其他c,c ++,c#项目中加载它.

在我的情况下,我想在teraterm和其他简单的自我开发的c#应用程序中加载它.

c c# c++ dll visual-studio-2010

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

Cmake Vs. Android.mk

我觉得CMake和Android.mk有很多共同点,有人可以向我解释一下有什么区别,为什么Google发明了一个新的构建系统而没有使用CMake?

cmake android.mk

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