Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
soc:2008:stefanha:journal:week8 [2008/07/19 10:49]
stefanha
soc:2008:stefanha:journal:week8 [2009/03/07 09:20] (current)
stefanha
Line 1: Line 1:
 ====== Stefan Hajnoczi: GDB Remote Debugging ====== ====== Stefan Hajnoczi: GDB Remote Debugging ======
  
-===== Week =====+===== Week =====
  
 **Milestones:​** **Milestones:​**
Line 106: Line 106:
 </​code>​ </​code>​
  
-Why was ''​img1'' ​used an not ''​pxelinux.0''? ​ Embedded images are automatically named ''​img#''​ starting from ''​img0''​. ​ They do not retain their original ​filename.  For example:+Why did we write ''​imgload ​img1'' ​and not ''​imgload ​pxelinux.0''? ​ Embedded images are automatically named ''​img#''​ starting from ''​img0''​. ​ They do not retain their original ​filenames.  For example:
 <​code>​ <​code>​
 $ make EMBEDDED_IMAGE=first.gpxe,​second.gpxe,​third.gpxe $ make EMBEDDED_IMAGE=first.gpxe,​second.gpxe,​third.gpxe
Line 114: Line 114:
 Also, notice that we had to use ''​imgload''​ before doing ''​boot''​. ​ This is because embedded images are not automatically loaded for booting. ​ They are simply available as if they had been fetched using ''​imgfetch''​. Also, notice that we had to use ''​imgload''​ before doing ''​boot''​. ​ This is because embedded images are not automatically loaded for booting. ​ They are simply available as if they had been fetched using ''​imgfetch''​.
  
-The full behavior is described as follows. ​ When gPXE starts, it does the equivalent of ''​imgfetch''​ for every embedded image and assigns them names starting with ''​img0''​ for the first image. ​ Then it loads and boots the first image (''​img0''​). ​ If booting ''​img0''​ fails, it removes all embedded images and gives up.+The full behavior is described as follows. ​ When gPXE starts, it does the equivalent of ''​imgfetch''​ for every embedded image and assigns them names starting with ''​img0''​ for the first image. ​ Then it loads and boots the first image (''​img0''​). ​ If booting ''​img0''​ fails, it <del>removes all embedded images and</​del> ​gives up.
  
-It's interesting to note that gPXE //always// embeds an image, even if you do not give it one.  By specifying an embedded image, you are overriding the default embedded image. ​ The default embedded image is a script that tries DHCP booting from each network interface in turn:+**This paragraph does not apply to the multiembed code in gPXE mainline**.  ​It's interesting to note that gPXE //always// embeds an image, even if you do not give it one.  By specifying an embedded image, you are overriding the default embedded image. ​ The default embedded image is a script that tries DHCP booting from each network interface in turn:
 <​code>​ <​code>​
 #!gpxe #!gpxe
Line 123: Line 123:
  
 **Limitations of my patch**: **Limitations of my patch**:
-  * The semantics of replacing ''​autoboot()''​ with embedded images are not 100% correct.  The autoboot process will bring up each network interface in turn using DHCP and attempt to run the embedded image or fetch a file from the network. ​ Now, embedded images run only once and without any network interface being up or configured.+  * The semantics of replacing ''​autoboot()''​ with embedded images are not 100% compatible with past gPXE behavior.  The autoboot process will bring up each network interface in turn using DHCP and attempt to run the embedded image or fetch a file from the network. ​ Now, embedded images run only once and without any network interface being up or configured.
  
-Next steps: +===== Next week ===== 
-  ​* ​[uhmalloc] Kill this patch, use ''​malloc''​ allocator instead for DMA buffers. +On to [[.:week9|Week 9]].
-  * [DMA] DMA pool API so drivers can reserve DMA buffers on ''​open()''​. +
-  * [b44Cleanup, testing, performance. +
-  * [shutdown] Remove gPXE allocated memory and free up PXE+UNDI, if necessary. +
-  * [bzImage] Expand the heap size to the full 64K segment when loading a bzImage kernel with version 2.02 or higher. +
-  * [GDBReal-mode remote debugging.+

Navigation

* [[:start|Home]] * [[:about|About our Project]] * [[:download|Download]] * [[:screenshots|Screenshots]] * Documentation * [[:howtos|HowTo Guides]] * [[:appnotes|Application Notes]] * [[:faq:|FAQs]] * [[:doc|General Doc]] * [[:talks|Videos, Talks, and Papers]] * [[:hardwareissues|Hardware Issues]] * [[:mailinglists|Mailing lists]] * [[http://support.etherboot.org/|Bugtracker]] * [[:contributing|Contributing]] * [[:editing_permission|Wiki Edit Permission]] * [[:wiki:syntax|Wiki Syntax]] * [[:contact|Contact]] * [[:relatedlinks|Related Links]] * [[:commerciallinks|Commercial Links]] * [[:acknowledgements|Acknowledgements]] * [[:logos|Logo Art]]

QR Code
QR Code soc:2008:stefanha:journal:week8 (generated for current page)