On 01/12/2019 02:44 AM, Bruce Ferrell wrote: > Starting from the last question: > > strace VBoxManage startvm... > > I tend to just watch stuff flow by, but you may want to save the output so > you'll need to do redirects to capture it or you can start the VM and do > > ps -efw | grep vbox > > vbox 21127 13705 26 2018 ? 4-19:58:40 > /usr/lib/virtualbox/VBoxHeadless --comment win7-2 --startvm > 8e8dd73e-315a-45cf-a4c7-3ca38ade0dfc --vrde config > > strace -p <pid of the vm process> > > strace -p 21127 1> trace.out 2>> trace.out > > to attach to the running process and collect a trace of what it's up to. > > It's a crude, blunt example, but I tend to find things this way. Cruse and > blunt is usually enough.
Blunt seemed to be all that was needed. The strace log is very boring, but very clear on what is happening. I attached the strace and then typed 'dir' and strace started churning out what look like blocking-select with the timeout NULL?? That would correspond to exactly what I'm seeing as far as behavior goes, but if it was reading in large enough chunks even blocking I/O should work, e.g. strace shows select(10, [9], NULL, [9], NULL) = 1 (in [9]) Then, really weird, read uses "\372" as the 'buf' parameter address and then attempts a read of SIZE 1??? (one byte??) read(9, "\372", 1) = 1 Huh? I would expect a much larger read (I'd use at least 1024 if not 8192) The log, just keeps going for 239 lines this way in the course of one `dir` statement, e.g. strace: Process 27413 attached select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 select(10, [9], NULL, [9], NULL) = 1 (in [9]) read(9, "\372", 1) = 1 ... I don't know whether this is normal or FUBAR -- but it seems to correspond to every line of dir output once the screen starts to scroll on cmd.exe. Is this normal?? -- David C. Rankin, J.D.,P.E. _______________________________________________ VBox-users-community mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/vbox-users-community _______________________________________________ Unsubscribe: mailto:[email protected]?subject=unsubscribe
