|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 10240 (0x2800) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Communicating_Tasks, seg_0550b5
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
with Text_Io; with Transport; with Transport_Defs; with Utils; with Byte_Defs; with Host_Id_Io; with Frame_Defs; with Orb_Defs; package body Communicating_Tasks is task body T1 is The_Frame : Frame_Defs.Frame; The_Connection : Transport.Connection_Id; The_Connection_Status : Transport_Defs.Status_Code; The_Network_Name : Transport_Defs.Network_Name (1 .. 6) := "TCP/IP"; --The_Socket_Id :; The_Data_To_Send : Frame_Defs.Communication_Data; --Byte_Defs.Byte_String (1 .. 12) := -- Utils.String_To_Byte_String ("Jimy Hendrix"); The_Count_To_Send : Natural; The_Data_To_Get : Byte_Defs.Byte_String (1 .. 4); The_Count_To_Get : Natural; The_Host_Id : Orb_Defs.Host_Id; The_Socket_Id : Orb_Defs.Socket_Id; begin Text_Io.Put_Line ("Tache Emetteur lancee..."); Text_Io.Put_Line ("Initialisation Emetteur..."); -- faire une boucle sur is open Transport.Open (Connection => The_Connection, Status => The_Connection_Status, Network => The_Network_Name); Text_Io.Put_Line ("Initialisation Emetteur terminee..."); Frame_Defs.Init_Frame ("tototitijuhyuojhop", Orb_Defs.Default_Orb_Socket, Transport.Local_Host (The_Network_Name), Orb_Defs.Default_Orb_Socket, Transport.Local_Host (The_Network_Name), 1, 3, "kakan,lnlk", "kukujkyiej;", "kikivytdfh", The_Frame); Text_Io.Put_Line (Frame_Defs.Image (The_Frame)); Frame_Defs.Get (Frame_Defs.Dest_Host_Field, The_Frame, The_Host_Id); Frame_Defs.Get (Frame_Defs.Dest_Socket_Field, The_Frame, The_Socket_Id); while not (Transport.Is_Connected (The_Connection)) loop Text_Io.Put_Line ("Emetteur tente connection..."); Transport.Connect (Connection => The_Connection, Status => The_Connection_Status, Remote_Host => The_Host_Id, Remote_Socket => The_Socket_Id); end loop; Text_Io.Put_Line ("connection etablie t1"); Frame_Defs.Get_Frame (The_Frame, The_Data_To_Send); Transport.Transmit (Connection => The_Connection, Status => The_Connection_Status, Data => The_Data_To_Send, Count => The_Count_To_Send); Text_Io.Put_Line ("Message envoye..."); Transport.Receive (Connection => The_Connection, Status => The_Connection_Status, Data => The_Data_To_Get, Count => The_Count_To_Get); Transport.Disconnect (The_Connection); Text_Io.Put_Line ("T1 disconnected."); Text_Io.Put_Line ("T1 aborted"); end T1; task body T2 is The_Frame : Frame_Defs.Frame; The_Connection : Transport.Connection_Id; The_Connection_Status : Transport_Defs.Status_Code; The_Network_Name : Transport_Defs.Network_Name (1 .. 6) := "TCP/IP"; The_Socket_Id : Transport_Defs.Socket_Id (1 .. 2) := Orb_Defs.Default_Orb_Socket; The_Data_To_Get : Frame_Defs.Communication_Data; The_Count_To_Get : Natural; The_Data_To_Send : Byte_Defs.Byte_String (1 .. 4); -- Utils.String_To_Byte_String ("Good"); The_Count_To_Send : Natural; begin Text_Io.Put_Line ("Tache Recepteur lancee..."); Text_Io.Put_Line ("Initialisation Recepteur..."); -- faire une boucle Transport.Open (Connection => The_Connection, Status => The_Connection_Status, Network => The_Network_Name, Local_Socket => The_Socket_Id); Text_Io.Put_Line ("Initialisation Recepteur terminee..."); while not (Transport.Is_Connected (The_Connection)) loop Text_Io.Put_Line ("Recepteur attend une connection..."); Transport.Connect (The_Connection, The_Connection_Status); Text_Io.Put ("A connection between T1 & T2 was initiated." & Ascii.Lf); end loop; Text_Io.Put_Line ("connection etablie t2"); Transport.Receive (Connection => The_Connection, Status => The_Connection_Status, Data => The_Data_To_Get, Count => The_Count_To_Get); Text_Io.Put_Line ("Message recu : "); Frame_Defs.Set_Frame (The_Data_To_Get, The_Frame); Text_Io.Put_Line (Frame_Defs.Image (The_Frame)); Transport.Transmit (Connection => The_Connection, Status => The_Connection_Status, Data => The_Data_To_Send, Count => The_Count_To_Send); Transport.Disconnect (The_Connection); Text_Io.Put_Line ("T2 disconnected."); Text_Io.Put_Line ("T2 aborted."); end T2; end Communicating_Tasks;
nblk1=9 nid=8 hdr6=e [0x00] rec0=20 rec1=00 rec2=01 rec3=012 [0x01] rec0=17 rec1=00 rec2=04 rec3=05c [0x02] rec0=03 rec1=00 rec2=07 rec3=00c [0x03] rec0=1c rec1=00 rec2=09 rec3=03a [0x04] rec0=18 rec1=00 rec2=05 rec3=02e [0x05] rec0=1b rec1=00 rec2=06 rec3=050 [0x06] rec0=11 rec1=00 rec2=03 rec3=000 [0x07] rec0=07 rec1=00 rec2=04 rec3=000 [0x08] rec0=07 rec1=00 rec2=04 rec3=001 tail 0x2175e9ff287bc3d5eb7ea 0x42a00088462060003 Free Block Chain: 0x8: 0000 00 02 00 37 80 15 6f 6e 20 3d 3e 20 54 68 65 5f ┆ 7 on => The_┆ 0x2: 0000 00 00 01 39 80 2e 20 20 20 20 20 54 68 65 5f 43 ┆ 9 . The_C┆