小编w3b*_*ard的帖子

为什么Perl系统的返回值不符合我的预期?

首先让我解释一下我想要实现的目标.基本上有两个Perl脚本.一个是我用UI调用主脚本.运行此脚本的用户将看到他可以从菜单中调用的其他脚本的列表.此列表通过自定义配置文件加载.主脚本的目的是能够根据需要在将来添加其他脚本而不更改源,并作为cron作业(非交互模式)和用户需要(交互模式)运行.作为公司政策,我无权发布整个脚本,因此我将发布交互模式用户选择部分:

for($i = 0;$i < @{$conf}+1;$i++)
    {
        if($i % 2 == 1 || $i == 0)
        {
            next;
        }
        print $n++ . ". @{$conf}[$i-1]\n";
    }
    print "(health_check) ";

    #
    # User selection
    #

    my $in = <>;
    chomp($in);

    if($in =~ /[A-Za-z]/)
    {
        write_log("[*] Invalid Selection: $in");
        print "\n<<<<<<<<<<<<>>>>>>>>>>>>>\n";
        print ">>> Invalid Selection <<<\n";
        print "<<<<<<<<<<<<>>>>>>>>>>>>>\n";
    }
    elsif($in == 0)
    {
        write_log("Exiting interactive mode");
        last;
    }
    elsif(scalar($scripts[$in]))
    {
        write_log("[*] running: $scripts[$in]");
        $rez = system('./' . "$scripts[$in]");

        if($rez == 0b00)
        {
            printf("%s: …
Run Code Online (Sandbox Code Playgroud)

perl exit-code

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

访问Linux 2.6.x下的任何内存位置

我在x86机器上使用Slackware 12.2.我试图通过转储特定的内存部分来调试/弄清楚事情.不幸的是,我对Linux内核的了解非常局限于编程/测试所需的内容.

所以这是我的问题:有没有办法访问内存中的任何一点?我尝试使用char指针执行此操作,以便它只有一个字节长.然而,该程序崩溃并吐出了一些性质:"无法访问内存位置".现在我指向0x00000000位置,系统存储它的中断向量(除非改变了),这实际上并不重要.

现在我的理解是内核将为程序分配内存(数据,堆栈,堆等),并且该程序将无法在其他任何地方运行.所以我在考虑使用NASM来告诉CPU直接获取我需要的内容,但我不确定这是否可行(我需要弄清楚如何将MASM转换为NASM).

好吧,那是我长篇大论的独白.基本上我的问题是:"有没有办法实现这一目标?".

无论如何...

linux memory assembly kernel

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

三维空间中的三角剖分

免责声明:这是为了上课,但是我的想法是新鲜的,并且在正确的方向上轻推非常感激.此外,这需要在原始C中实现,因此不能使用任何花哨的库.

我必须为潜艇编写一个搜索和救援模拟器,它必须找到一个随机放置在MAX_XYZ(100000)网格中的3D空间中的探测器.我给出的唯一工具是"ping",它将给出某个子探针和探针之间距离的大小.目标是优化整个操作的成本,因此蛮力尝试(如查看每个单独的坐标)将不起作用.因此我在思考三角测量.

现在,它对我来说有意义,放置三个子,每个子使用他们的ping来获得它们和探针之间的距离.由于每个sub相对于彼此已知距离,因此很容易用它们构建四面体的底部,并且ping的结果将指向某个坐标,我遇到的问题是如何计算出高程,或四面体的高度.

所以我的数据如下:

  1. 潜艇之间的距离(矢量格式)
  2. 每个潜艇之间的角度(非常容易计算)
  3. 每个子探针和探针之间的距离(从基部到峰的3个部分)
  4. 四面体的每个外3面内的角度.

我试着找到与四面体顶点之间的某种关系以及它们各自的相对角度,但是我发现所有这些都必须处理用等边三角形构成的四面体,这没有多大帮助.我的印象是这可以很容易地用trig解决,但要么我没有看到它,要么我需要更多的咖啡.

任何建议,将不胜感激!

algorithm triangulation

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

标签 统计

algorithm ×1

assembly ×1

exit-code ×1

kernel ×1

linux ×1

memory ×1

perl ×1

triangulation ×1