English Amiga Board


Go Back   English Amiga Board > Support > support.Other

 
 
Thread Tools
Old 08 June 2013, 16:37   #1
Mrs Beanbag
Glastonbridge Software
 
Mrs Beanbag's Avatar
 
Join Date: Jan 2012
Location: Edinburgh/Scotland
Posts: 2,243
Bootable Network File System in ROM for Amiga

Hi Toni, just been having a discussion over on Amiga.org about making rommable filesystems. Specifically NFS, so an Amiga can net boot without any disks. Do you think this is possible?
Mrs Beanbag is offline  
Old 08 June 2013, 20:28   #2
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,534
Quote:
Originally Posted by Mrs Beanbag View Post
Hi Toni, just been having a discussion over on Amiga.org about making rommable filesystems. Specifically NFS, so an Amiga can net boot without any disks. Do you think this is possible?
Any Amiga filesystem (as long as it does not do anything stupid) can be made bootable quite easily, filesystem itself does not need any extra support, all the magic is done by KS strap module and expansion.library. My ACA620 reset proof ram disk for example does it.

But... Directly booting from network filesystem is of course impossible because you need working network first

Note that creating bootable dos node is quite tricky, it needs special handling that isn't documented very well. (For example you need to create some fake autoconfig structures..)
Toni Wilen is online now  
Old 08 June 2013, 20:45   #3
Mrs Beanbag
Glastonbridge Software
 
Mrs Beanbag's Avatar
 
Join Date: Jan 2012
Location: Edinburgh/Scotland
Posts: 2,243
I realise the network drivers/TCP stack must also be resident in ROM as well, could that work? I imagined maybe booting into a "ROM" disk first (essentially a RAM disk image with things preloaded on it), mounting a reset-proof NFS from there and then rebooting. TCP would have to survive reset too but I imagine that's possible? Or maybe the NFS handler could be modified to start TCP on demand.
Mrs Beanbag is offline  
Old 08 June 2013, 20:59   #4
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,534
Quote:
Originally Posted by Mrs Beanbag View Post
I realise the network drivers/TCP stack must also be resident in ROM as well, could that work? I imagined maybe booting into a "ROM" disk first (essentially a RAM disk image with things preloaded on it), mounting a reset-proof NFS from there and then rebooting. TCP would have to survive reset too but I imagine that's possible? Or maybe the NFS handler could be modified to start TCP on demand.
I am 100% sure network stack requires dos.library and other things that are only available after boot drive boots.

Booting to "ROM disk" that inits network, changes assigns and continues booting from network drive is the only working solution.

Note that being rommable or not rommable is not a problem, you can always create rommable "loader" module that copies and relocates non-rommable module(s) to RAM.

(and I think these posts should be moved from this thread)
Toni Wilen is online now  
Old 08 June 2013, 21:59   #5
Mrs Beanbag
Glastonbridge Software
 
Mrs Beanbag's Avatar
 
Join Date: Jan 2012
Location: Edinburgh/Scotland
Posts: 2,243
Presumably dos.library is available by the time startup-sequence is loaded? So if the TCP stack were started by the NFS handler on first file access, it could do it. I have FTP on my Amiga that is mounted at boot but doesn't access the network until I try to open it.
Mrs Beanbag is offline  
Old 09 June 2013, 09:51   #6
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,534
First boot filesystem file access is multiple Lock()s. Before startup-sequence is run.

After boot filesystem has been found, following happens:
- DOS gets initialized (via BootPoint "bootblock")
- DOS creates boot volume assigns. (SYS:. C:, S:, LIBS: etc..)
- S:Startup-sequence is opened
- Boot shell is started.
- Shell starts executing S:Startup-sequence.
- Normal shell screen/window opens when/if shell outputs something.

This means first NFS access is first Lock() (ACTION_LOCATE_OBJECT) which will require working network. Even if NFS fakes/delays it internally, opening of startup-sequence or first command in s-s (ACTION_INPUT/ACTION_READ) really require working network.

-> TCP stack MUST be ROM-built-in and I can guarantee it is not designed for it, at least it will require config files (=dos must be available)
Toni Wilen is online now  
Old 09 June 2013, 15:57   #7
Mrs Beanbag
Glastonbridge Software
 
Mrs Beanbag's Avatar
 
Join Date: Jan 2012
Location: Edinburgh/Scotland
Posts: 2,243
I think we could fake/delay it internally, or make some kind of nfs/RAD disk hybrid, so that it can be initialised with some directories and config files before the network starts. If the TCP stack was coded into the NFS handler it could get the config file out of itself directly without going through DOS.

But you would have to boot to a ROM disk first to do the setting up.
Mrs Beanbag is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Amiga File System DyLucke support.Apps 2 04 April 2010 00:28
Kickstart System ROM file tzik New to Emulation or Amiga scene 3 01 April 2009 15:13
System is not validated! FFS (and I dont mean fast file system!) Macca support.Hardware 11 11 June 2007 13:04
Amiga File-System MajicMushroom Coders. General 10 28 November 2005 19:37
SFS file system and a network that actually works! Eny- support.Hardware 13 02 June 2004 13:57

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 10:39.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.07588 seconds with 14 queries