我问自己一个关于 z/os 日志的问题:

我只是想知道所有开始的操作是否总是由 $HASP373 和 IEF403I 调用?对于 $HASP395 和 IEF404I 调用的状态 Ended ?

有帮助吗?

解决方案

no。 那些 消息用于作业。并非所有操作都是作业。一个不是作业的操作的示例是 system命令。我现在没有z / OS系统,但我相信另一个不使用您引用的消息的操作的另一个例子是一个已启动的任务。

这个可能会有所帮助,因为它试图在UNIX术语中解释z / OS概念。

其他提示

z / OS的麻烦是它是真的很难解释一些东西而不引入另一种也需要解释的概念。反过来,这需要另一个解释等。这部分是由于与UNIX,Windows,OS X等相比来自不同行星的Z / OS操作系统,所有这些都是广泛的。

这些消息是由系统发出的大量工作中的系统,但不是所有的工作。

z / os上的所有工作都在其自己的地址空间中运行,几乎像mini-vm。 z / OS系统中会有许多地址空间(目前我们的380)。地址空间中的程序不知道任何其他地址空间,并认为它可以访问整个2GB(31位寻址)内存范围(如果需要,可以授权使用不同的地址空间 CAN 通信,超过2GB有64位寻址)。一个地址空间中的程序无法通过覆盖存储来崩溃另一个地址空间中的程序。在2个不同的地址空间中的程序可以访问相同的内存地址,但不影响彼此,因为它们实际上,不知不用,可以访问不同的内存。

有4种类型的地址空间:

  • tso(时间共享选项) - 这些用户已登录到系统,键入命令和获取响应。他们可以使用rexxx和clist(旧的命令列表,通常由rexx替换)运行脚本,与Perl和shell脚本相同,提交批处理作业,编写和编译代码等。
  • 批处理作业(或作业) - 这是您想要运行程序的地方,因此您可以创建一个文本文件,其中包含程序的名称以及它/他们需要的文件(s) )并提交它。系统将运行程序并在完成后告诉您,同时运行,您可以去做别的事情。您甚至不需要登录 - 您可以准备一个FTP作业(例如)在01:00运行,同时您睡着了,如果第一个作品,则要运行其他工作。
  • 启动任务(stcs) - 非常类似于批处理作业。通常在系统本身开始或由在系统控制台上发出该STC的START命令的操作员开始或由操作员启动。 (例如,'开始DB2'开始DB2启动任务。或者,用户可以为自己的测试DB2系统提交批处理作业。)

  • 系统地址空间(SYSA)。考虑这些像UNIX守护程序。由操作系统本身开始进行各种基本进程。还有地址空间表示在z / OS(USS - Uxniz系统服务)的“UNIX”一半下运行的进程,但这是另一个故事。

在z /操作系统中没有作为“操作”这样的东西。在地址空间内,许多程序可能正在运行,每个程序由TCB(任务控制块)或SRB(系统请求块)标识。

但是,如果您知道所需信息是由正常批处理作业产生的,那么寻找那个作业的£Hasp373和£Hasp395消息将是正确的位置。请记住,消息ID(HASP373和HASP395)可能无法以“£”在系统上以“£”开头。 '£'是默认值,但它是一个可自定义的参数。 $和#也很常见。

我知道我在说什么,但如果上述任何一个都不清楚,那么我还没有很好地解释它。我可能会犯下我通过使用另一个未知概念来解释并解释未知概念的罪。 : - )

工作通过称为子系统接口的东西进入z / OS。这一流程的一部分是,通常,当启动地址空间时,它请求通过定义界面(IEFSSREQ)启动地址空间的子系统的工作。这款握手是您的HASP消息等的地方。

这是一个淡化的例子。

操作员从系统控制台进入start命令。作为处理该命令的一部分,系统创建了一个地址空间,最终在新地址空间中的线程说,“好的 - 我已经准备好了......给我一些工作要做”。这将转到主要作业条目子系统,Who Amply Thand Space才能做到的事情 - 表示操作员在这种情况下启动任务的内部数据结构。作为该链的一部分,发出各种$ HASP消息,这对TSO会话的方式几乎相同,开始任务(STC)和JCL提交批处理作业。

JES2 / JES3是子系统的示例,但还有其他人。

例如,如果我们的运算符在start命令上添加sub= mstr参数,请求不会通过主要jes - 因此不会有您要查找的任何$ HASP消息。有大量的供应商应用程序在JES之外启动和管理地址空间,这是您将自己限制在HASP和IEF401消息中的内容。

此外,UNIX服务具有类似于UNIX“Fork”的各种API,可用于产卵地址空间而不需要涉及JES。

如果您想了解活动开始和结束,有更好的方式 - SMF,ENF信号等。如果您不知道使用系统跟踪设施并读取一些,则会有更好的方式来学习此内容转储。关于Z / OS的美妙事物是它就在那里,对于那些花时间来看弄清楚在哪里看起来。

工作是通过JES2 / JES3的东西。 (在您的情况下,JES2。)JES2 / JES3作业通常用于批处理类型的工作。例如,一个排序作业,我提交的东西,然后稍后回来并得到答案。但是,在z /操作系统下运行了很多工作,它不会通过JES2 / JES3。

这里的部分问题是你的手术意味着什么;例如,虽然您可能会收到一条消息,但是DB2已启动,但在它开始之后,每次都会出现一个查询时不会告诉您。 TSO用户可能在他/她的地址空间下运行一个rexx exec,但这不会通过jes。

另一种来看待这一点是JES2 / JES3是作业管理子系统,但它们不等同于UNIX / Windows系统上的内核,这确实安排在系统上运行的所有工作。对于Z / OS,有多种方法可以进入系统;示例包括JES2 / JES3,TSO,ISPF,CICS,DB2,IMS,通过控制台等。然后,它可以到主调度程序/ WLM / SRM,以管理通过所有子系统进出的所有请求。

如果您可以访问z / OS系统,请查看SDSF,或者您用于管理JES2的任何内容。 ST Panel在SDSF下,是由JES2管理的运行/有资格运行的事物列表。但是,如果您查看DA Panel(假设您有权限为此),您将注意到,在ST面板中没有显示的DA面板上有很多地址空间。< / p>

如果地址空间是通过 JES2 子系统启动的(通常是这种情况,除非使用 MVS START 命令指定另一个子系统或 MSTR),则发出 $HASP373 作业名 STARTED。同样,当地址空间结束时,将发出消息 $HASP395。

IEF403I 和 IEF404I 消息由系统在类似情况下发出,并且与 JES2 或 JES3 正在执行的操作无关,也与地址空间在哪个子系统下启动无关。仅当操作员请求使用以下命令监视作业名称时才会发出这些消息 SETCON MONITOR 或者 MONITOR JOBNAMES 命令。用于自动化操作的产品通常会执行此操作。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top