28 November 2022, 14:57 | #1101 | ||||
Registered User
Join Date: Aug 2010
Location: Germany
Posts: 532
|
Quote:
Quote:
This is one of the challenges of the current iteration of AmigaOS 3 maintenance/development work. Something will have to give, eventually. Until then we must play with the deck and the rules which were handed down to us. Quote:
Quote:
As for MessyDOS, colour me skeptical. This code even features large assembly language portions which are a sure sign of trouble ahead. There is no license included and the code is at least 15 years old. Smells very risky to me, and according to the rules we play by, committing to such a codebase would be a major investment. We already have such commitments to ReAction integration, for example, which take up a painful amount of time That said, if we can find somebody to help us out and integrate it properly, all obligations included, never say never Last edited by Olaf Barthel; 28 November 2022 at 15:16. |
||||
28 November 2022, 15:02 | #1102 | |
Registered User
Join Date: Jan 2019
Location: Germany
Posts: 3,215
|
Quote:
Improve on *what* exactly? I mean, if you request features, what are the features? RAM: and RAD: are fast, but they are two very different things, and they are not the solution for "everything I want to keep in ram". There are other mechanisms to keep things in Ram, and depending on "what that thing is", these other mechanisms may be better suited. RAM: is a file system of its own. It organizes files, directories,knows the names of the things that are in it. It is aware of the objects it contains. RAD: is like a blank harddisk without any structure. RAD: needs a file system you put on to organize the files for it. In most cases, it is an FFS you "format" the RAD: with. It is the file system that knows the objects, not the ramdrive.device underheath RAD: consists of. Look at the mount entry for RAD: It does have a mount entry, unlike RAM: Thus, in case of doubt, RAM: is the faster of the two since it manages its own data. RAD: goes through two layers. The filesystem (FFS) and the actual ramdrive.device keeping the data. |
|
28 November 2022, 15:07 | #1103 | |
Registered User
Join Date: Jan 2019
Location: Germany
Posts: 3,215
|
Quote:
What does it do CrossDos doesn't? I bought MSH before CrossDos arrived (at 2.1 times, if I recall), but it was even more limited than CrossDos. Just to name a couple of things, CrossDos does now support long file names, larger volumes, multiple variants of FAT (the skinny and the really fat ones) and also became multi-threaded. Going through this whole exercise again for just the same file system structure - what would buy that? |
|
28 November 2022, 15:11 | #1104 | |
Registered User
Join Date: Aug 2010
Location: Germany
Posts: 532
|
Quote:
You can see this tilt towards small memory configurations in the design and implementations of its components, and ram-handler is a good example for this. Any impression ram-handler gives of being fast is something of an illusion. It only is fast in relation to hard disks and SSDs, and it is only "fast" if it stores a few hundred files, tops, and these files should not be much larger than a few thousand bytes. Once you cross these thresholds, ram-handler will show how poorly it scales. The basic building blocks of ram-handler are lists of blocks and directory entries. Even FFS scales better on a standard Amiga floppy disk, without even trying. ram-handler was designed for a system for which RAM: will have filled up long before the scalability issues would become apparent. This is also why it's so (relatively speaking) small. The original ram-handler was barely 24 KBytes of source code (some 850 lines of code). The "modern" ram-handler implementation certainly is larger, but it also does so much more than the Kickstart 1.x version. ramdrive.device has its own constraints, some of these related to how much memory is available which will not go away after a reboot. For example, one constraint is in that it expects the FFS to be around because ramdrive.device only creates a "skeleton" file system structure which the default file system will then fill in. This is one of the duties of the default file system. Last edited by Olaf Barthel; 28 November 2022 at 15:17. |
|
28 November 2022, 15:36 | #1105 | |
Registered User
Join Date: Aug 2010
Location: Germany
Posts: 532
|
Quote:
I for one would be happy to see that this round of testing does not reveal another subtle performance issue which went unnoticed since 1989 What I can promise you, however, is that this new version of ram-handler will be faster than any version which ever preceded it, will have fewer bugs than the OS4 version but hopefully no new bugs |
|
28 November 2022, 15:50 | #1106 |
Registered User
Join Date: Dec 2007
Location: Szczecin/Poland
Posts: 424
|
Have you tried comparing the new RAM disk performance to AmberRAM? Would it be feasible to allow user to create two RAM disks? I always use AmberRAM to move T: out of RAM:.
|
28 November 2022, 17:21 | #1107 | |
Registered User
Join Date: Aug 2010
Location: Germany
Posts: 532
|
Quote:
The constraints imposed upon ram-handler have not changed, and what it previously could do only poorly is still being done poorly by the current version. However, with all the changes in place due to bug fixes and other surprises, the current ram-handler will do less poorly than its precursors. |
|
28 November 2022, 19:16 | #1108 |
Registered User
Join Date: Jan 2019
Location: Germany
Posts: 3,215
|
Well, Olaf, I wouldn't be so modest. Actually, I am much more afraid of alternative RAM handlers knowing all the pitfalls (and the long development history of the RAM-Handler). As you know, writing a file system is non-trivial, in particular in regards to ACTION_EXNEXT, for iterating through a directory - and this packet must work, even if the file or directory is erased "under the feed" of the file system through a second process.
I have probably seen too many bad implementations to be confident that anything alternative works a lot better. It may possibly be faster, but likely with more defects than RAM - it is simply too easy to get it wrong. I remember a rather long conversation with Jörg on the ENV-Handler on this topic, and the end result, if I recall correctly, was an "oops!". ..which was actually why this "copy on read" functionality came into RAM, and not into a separate handler. It is just quite error prone to write one, and the RAM construction had at least sufficient time to age and the bugs fixed (at least the most obvious ones) . I personally trade stability to speed any time. Long story short, there are parts of Tripos legacy in dos that were just ill-designed (or designed without too much thought it seems). |
28 November 2022, 19:52 | #1109 |
Paranoid Amigoid
Join Date: Mar 2008
Location: Athens/Greece
Age: 45
Posts: 1,978
|
Ok some more questions concerning MenuTools which I started using (porting my ToolsDaemon menus as we speak):
Last but not least a crazy idea... I wondered that since MenuTools is text based as well, if I could make it dynamic. Example would be...
(I guess using scripting language inside the Arexx script is out of the question that's why I thought this approach). I know I sound a bit crazy of thinking that, but I thought it would be nice BEING able to completely disable my VAMPIRE menu title bar with all it's contents if a Vampire Board is not Present (which happens when I change my CF to WinUAE or another Amiga without Vampire) Last edited by mfilos; 28 November 2022 at 22:05. |
28 November 2022, 21:59 | #1110 |
Bit Copying Bard
Join Date: Jan 2017
Location: Kelty, Fife, Scotland
Age: 41
Posts: 1,293
|
|
28 November 2022, 22:12 | #1111 |
Registered User
Join Date: Nov 2010
Location: Sweden
Posts: 528
|
|
28 November 2022, 22:46 | #1112 | ||||||
Registered User
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 6,334
|
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
|
||||||
29 November 2022, 07:37 | #1113 |
Paranoid Amigoid
Join Date: Mar 2008
Location: Athens/Greece
Age: 45
Posts: 1,978
|
Thanks for the replies Daedalus.
Is there a thorough documentation of MenuTools cause the Help didn't give info and the nice written documentation inside MenuTools (commented body) is only for adding menu items. Nowhere how you remove. I'd also would be grateful for an explanation about the request of mine about passing parameters cause I didn't understand clearly what you said. Thanks for your time anyway |
29 November 2022, 09:06 | #1114 | |
Registered User
Join Date: Aug 2010
Location: Germany
Posts: 532
|
Quote:
The changes currently being worked on now bump against ROM space and RAM limitations which did not exist in earlier releases, which is opening up another can of worms. Components which have to be in ROM cannot be dropped or loaded from disk. The ROM is not a boot environment. Existing software and firmware depends upon components being present. Our challenge now involves finding ways to save to space by optimizing existing code so that it allows other components, which grew because of necessary bug fixes (e.g. ram-handler) to fit and still leave room for further bug fixes. This is, for now, the measure by which we gauge what is reasonably possible As for finding a place for existing software, such as PFS3, it has to be done right. For Amiga OS 3.5 and 3.9 both we chose integrating 3rd party solutions rather than bundling them. Anybody can assemble her or his choice of existing components to use alongside what ships as part of the operating system package. But there has to be more than this for a product such as Amiga OS 3.3. For one thing, code review and the changes which are bound to be prompted by it, are necessary. This goes double for older original operating system components which can contain a surprising number of subtle bugs such as ram-handler. |
|
29 November 2022, 09:21 | #1115 | |
Ex nihilo nihil
Join Date: Oct 2017
Location: CH
Posts: 4,856
|
Quote:
|
|
29 November 2022, 09:22 | #1116 | |||
Registered User
Join Date: Aug 2010
Location: Germany
Posts: 532
|
Quote:
Then you have to fix them, but the fixes require additional space and that has to be balanced by finding code which can be refactored or rewritten to save some 8-20 bytes here and there until the total of the savings add up. Repeat that as you find more bugs, etc. I have a bad feeling that this is what's in the cards for Amiga OS 3.3 development. It was amazing to discover how much space you can save by reordering variable initializations or dropping unnecessary "case" statements. Refactoring also revealed which code was actually never used. Quote:
Quote:
|
|||
29 November 2022, 10:16 | #1117 | ||
Registered User
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 6,334
|
Quote:
Quote:
|
||
29 November 2022, 10:23 | #1118 |
Paranoid Amigoid
Join Date: Mar 2008
Location: Athens/Greece
Age: 45
Posts: 1,978
|
@Daedalus
Thanks a lot man. Will definitely give some read I guess that only me gets annoyed from PFS3's write delay (that FFS and SFS don't have). I'm a nub at filesystems but always liked that you can edit a file and reboot immediately on FFS/SFS while you have to wait some secs on PFS3 or your changes are lost :/ |
29 November 2022, 11:33 | #1119 | |
Registered User
Join Date: Aug 2010
Location: Germany
Posts: 532
|
Quote:
The time between the last write command having been processed and the file system flushing the changes to the medium, then stopping the motor, is 3 seconds. This goes both for the original Amiga file system and the FFS. So, if you want to be reasonably safe, wait at least 3 seconds before you reboot your system. If you restart earlier, the file system processes may not have written back their changes yet. |
|
29 November 2022, 11:42 | #1120 |
Paranoid Amigoid
Join Date: Mar 2008
Location: Athens/Greece
Age: 45
Posts: 1,978
|
Thanks for the clarification Olaf. I certainly didn't know that, but tbh, I haven't actually managed to witness such a problem using FFS these last 2 weeks of using it.
Will keep that in mind for sure though |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Hively Tracker by Iris and Up Rough released for AmigaOS 4.0 | spoUP | News | 14 | 12 June 2014 19:00 |
KryoFlux FREE for AmigaOS Classic released | mr.vince | News | 32 | 23 March 2014 19:59 |
AmigaOS 3.9 | PoLoMoTo | support.WinUAE | 8 | 27 August 2011 18:06 |
AmigaOS | koncool | request.Apps | 6 | 04 June 2003 17:45 |
Amigaos 4 Released!!!! | th4t1guy | Amiga scene | 13 | 03 April 2003 09:52 |
|
|