pmacdona@sol.UVic.CA (Peter MacDonald)You don't start small, do you :-). If I /agree/ to add it to linux? If anybody implementes paging, he's going to get 2 extra copies of linux for free. How's that for an offer? Seriously, adding demand-loading should be relatively easy. I wouldn't suggest going past the filesystem, even for saving the block-numbers somewhere (and a bit-map won't do it, block nr must be ordered). Having the inode-pointer in the process table entry (and not releasing it before an exit), and using that to find the blocks wouldn't be too hard. A bit slower, but conceptually much easier. Then you can use the routines already on hand (map() etc). Note that the "relatively easy" must be taken with a bit of salt: you have to add the routines to the paging unit etc etc. No major problems at least. Also I'd like to keep linux simple even at the cost of some speed hit, as otherwise it grows until nobody really understands it. I'm kinda proud of my mm: it's not many lines of code (although it's not very clear code.) Re: sticky bits, shared text... I don't like sticky bits (in the meaning that they lock something into memory). I doubt it's really that useful on a small machine, that is essentially single-user. It's easy to grow the cache to 6M or more if you have the memory, and currently I don't see much unnecessary disk I/O in a heavy 'make'. Besides - sticky bits are hard to keep track of. Shared text and sticky bits have another shared problem: right now linux allows writes to the code segment. This isn't a very big problem, as the changes to 'mm' are minimal, but you'd have to check that the code segment is a multiple of 4096 (I /think/ I made ld do this, but I'm not sure). The biggest problem however is the amount of data you have to keep track of. You'll have to add a lot of structures to know which pages are in which executable etc. I don't think it's worth it, especially if real paging (with a partition of it's own) is implemented. tytso@ATHENA.MIT.EDU (Theodore Ts'o): Yes. The right way to do this is to add an floating-point emulator in the kernel, even if shared libraries are added. This is a real b**ch. I'll probably take a look at the djgpp package, but I'd really rather do it myself (it's an interesting project). I don't really have the time though, so ... Yes, I got the fix, but for once I had the bug corrected already. Very silly thing that came into the system with the "great reordering", when I changed the process tables. Luckily it isn't very bad. Another related bug was in crts.o, which always exits with a code of zero if main exits with a return xx. John T Kohl <jtkohl@cs.berkeley.edu> This would suggest to me that you have one of those braindead "slowdown" devices which aren't really completely hardware, but due to some software solution. At least some Gateway-2000's had this, which meant that they couldn't run well in protected mode under windows either (while accessing floppies or something like that). I don't really know what to do about it, as I don't know the hardware enough (I've leart a lot about PC's in the 11 months I've had one, but still...) I assume linux is running at full speed all the time? nicholas@cs.uwa.oz.au (Nicholas Yue) This should happen only on a 386-system with no 387. "dd 44..." is some math instruction (fld? whatever). However, linux depends on the BIOS to set the %cr0 bits for a coprocessor, and doesn't test for one itself, so even with 387 you might get this error if you BIOS doesn't set it up correctly. If you have a 387 but this error still happens, contact me, I guess I'll have to add the test-routine to linux. Linus PS. I now have a kernel that senses the video card (thanks to Galen Hunt), and the current version of fsck tries to correct things. I'm working on a "mkfs" that also senses bad blocks, as bad blocks have wreaked havoc on at least one drive (instant mess). I have a simple "fdisk" which doesn't try to change the partition tables, but at least it tells which devices you can use. Anything else that would ease the installation?
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| Jeff Garzik | Re: [Patch v2] Make PCI extended config space (MMCONFIG) a driver opt-in |
| Bart Van Assche | Integration of SCST in the mainstream Linux kernel |
git: | |
| Jakub Narebski | Re: VCS comparison table |
| Junio C Hamano | Re: [PATCH] Teach remote machinery about remotes.default config variable |
| Ping Yin | why still no empty directory support in git |
| Jon Smirl | ! [rejected] master -> master (non-fast forward) |
| Richard Stallman | Real men don't attack straw men |
| Theo de Raadt | That whole "Linux stealing our code" thing |
| Diana Eichert | Re: bcw(4) is gone |
| Didier Wiroth | win32-codecs, avi and amd64 question |
| Jarek Poplawski | [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Ayaz Abdulla | [PATCH] forcedeth: msi interrupts |
| KOVACS Krisztian | [PATCH 10/14] iptables socket match |
