2.4.1 FIXDLEN_DATA
The FIXDLEN_DATA structure is the fixed-length header in the .JOB description file. The FIXDLEN_DATA structure is located at the beginning of the file. The format of the FIXDLEN_DATA structure is as follows.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product Version |
File Version |
||||||||||||||||||||||||||||||
Job uuid (16 bytes) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
App Name Len Offset |
Trigger Offset |
||||||||||||||||||||||||||||||
Error Retry Count |
Error Retry Interval |
||||||||||||||||||||||||||||||
Idle Deadline |
Idle Wait |
||||||||||||||||||||||||||||||
Priority |
|||||||||||||||||||||||||||||||
Maximum Run Time |
|||||||||||||||||||||||||||||||
Exit Code |
|||||||||||||||||||||||||||||||
Status |
|||||||||||||||||||||||||||||||
Flags |
|||||||||||||||||||||||||||||||
Year |
Month |
||||||||||||||||||||||||||||||
Weekday |
Day |
||||||||||||||||||||||||||||||
Hour |
Minute |
||||||||||||||||||||||||||||||
Second |
MilliSeconds |
Product Version (2 bytes): Contains the version of the product that generated this .JOB file.<11>
File Version (2 bytes): Version of the .JOB file format. The client sets this to 0x0001.
Job uuid (16 bytes): Contains a randomly generated UUID to identify this task unique to the server.
App Name Len Offset (2 bytes): Contains the offset in bytes within the .JOB file where the length of the application name is located.
Trigger Offset (2 bytes): Contains the offset in bytes within the .JOB file where the task triggers are located.
Error Retry Count (2 bytes): Contains the number of execute attempts that are attempted for the task if the task fails to start.
Error Retry Interval (2 bytes): Contains the interval, in minutes, between successive retries.
Idle Deadline (2 bytes): Contains a maximum time in minutes to wait for the machine to become idle for Idle Wait minutes.
Idle Wait (2 bytes): Contains a value in minutes. The machine remains idle for this many minutes before it runs the task.
Priority (4 bytes): Contains ONE of the bit flags that control the priority at which the task will run. All bits not defined in the following table are set to 0 and ignored upon receipt. The bit field is structured as follows:
-
0
1
2
3
4
5
6
7
8
91
0
1
2
3
4
5
6
7
8
92
0
1
2
3
4
5
6
7
8
93
0
10
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
R
H
I
N
0
0
0
0
0
-
PRIORITY_CLASS
-
Value
Description
N
NORMAL_PRIORITY_CLASS
If set to 1, the task has no special scheduling requirements.
I
IDLE_PRIORITY_CLASS
If set to 1, the task can run in a process whose threads run only when the machine is idle, and are preempted by the threads of any process running in a higher priority class.
H
HIGH_PRIORITY_CLASS
If set to 1, the task performs time-critical tasks that can be executed immediately for it to run correctly. The threads of a high-priority class process preempt the threads of normal or idle priority class processes.
R
REALTIME_PRIORITY_CLASS
If set to 1, the task can run at the highest possible priority. The threads of a real-time priority class process preempt the threads of all other processes, including operating system processes performing important tasks.
Maximum Run Time (4 bytes): Contains the number of milliseconds the server will wait for the task to complete.
Exit Code (4 bytes): This contains the exit code of the executed task upon the completion of that task. MUST be set to 0x00000000 when sent and MUST be ignored on receipt.
Status (4 bytes): This contains the current status of the task. Is to be set to 0 and ignored upon receipt. Possible values are specified in the following table:
-
Value
Meaning
SCHED_S_TASK_READY
0x00041300
Task is not running but is scheduled to run at some time in the future.
SCHED_S_TASK_RUNNING
0x00041301
Task is currently running.
SCHED_S_TASK_NOT_SCHEDULED
0x00041305
The task is not running and has no valid triggers.<12>
Flags (4 bytes): Task-specific flag bits that are as specified in section 2.3.7.
-
The following eight fields all refer to the time this task most recently ran. When creating a job, the field values are to be ignored upon receipt.
-
Value
Meaning
Year
1601 — 30827
The year (1601–30827), inclusive.
Month
1 — 12
The month, January=1, February=2, …, December=12.
Weekday
0 — 6
The day of the week, Sunday=0, Monday=1, …, Saturday=6.
Day
1 — 31
The day of the month (1–31), inclusive.
Hour
0 — 23
The hour of the day (0–23), inclusive.
Minute
0 — 59
The minute of the hour (0–59), inclusive.
Second
0 — 59
The seconds of the minute (0–59), inclusive.
Milliseconds
0 — 999
Between 0 and 999, for values less than one second, inclusive.