minix/docs/UPDATING

105 lines
4 KiB
Text
Raw Normal View History

20100630:
protocol change between service and rs: be sure to compile commands
together with the system image and don't use the new userspace with
an old image (or vice versa); it is recommended to replace
/boot/image_big with the newly compiled image to keep option 1 in the
boot menu working.
20100625:
/etc/mk has been moved to /usr/share/mk. You will need to
create /usr/share/mk manually.
2010-06-26 22:33:57 +02:00
# cp -r /usr/src/share/mk /usr/share/
# cd /usr/src; make -m /usr/share/mk world
This patch switches the MINIX3 ethernet driver stack from a port-based model to an instance-based model. Each ethernet driver instance is now responsible for exactly one network interface card. The port field in /etc/inet.conf now acts as an instance field instead. This patch also updates the data link protocol. This update: - eliminates the concept of ports entirely; - eliminates DL_GETNAME entirely; - standardizes on using m_source for IPC and DL_ENDPT for safecopies; - removes error codes from TASK/STAT replies, as they were unused; - removes a number of other old or unused fields; - names and renames a few other fields. All ethernet drivers have been changed to: - conform to the new protocol, and exactly that; - take on an instance number based on a given "instance" argument; - skip that number of PCI devices in probe iterations; - use config tables and environment variables based on that number; - no longer be limited to a predefined maximum of cards in any way; - get rid of any leftover non-safecopy support and other ancient junk; - have a correct banner protocol figure, or none at all. Other changes: * Inet.conf is now taken to be line-based, and supports #-comments. No existing installations are expected to be affected by this. * A new, select-based asynchio library replaces the old one. Kindly contributed by Kees J. Bot. * Inet now supports use of select() on IP devices. Combined, the last two changes together speed up dhcpd considerably in the presence of multiple interfaces. * A small bug has been fixed in nonamed.
2010-05-18 00:22:53 +02:00
20100515:
/usr/src/etc/usr/rc updated: copy it (or merge it) to /usr/etc/rc.
/etc/inet.conf is now line-based; if you have hand-edited this file
before, then make sure that you do not have configurations in there
that span multiple lines.
20100512:
yacc and lex updated
# make includes
# cd commands/yacc
# make depend all install
# cd commands/lex
# LEX=flex make depend all install
2010-05-07 00:18:21 +02:00
20100506:
/usr/src/etc/usr/rc updated: copy it (or merge it) to /usr/etc/rc.
2010-04-12 19:56:07 +02:00
20100410:
/usr/src/etc/usr/rc updated: copy it (or merge it) to /usr/etc/rc.
/usr/src/etc/rc updated: copy it (or merge it) to /etc/rc.
Driver refactory for live update and crash recovery. SYSLIB CHANGES: - DS calls to publish / retrieve labels consider endpoints instead of u32_t. VFS CHANGES: - mapdriver() only adds an entry in the dmap table in VFS. - dev_up() is only executed upon reception of a driver up event. INET CHANGES: - INET no longer searches for existing drivers instances at startup. - A newtwork driver is (re)initialized upon reception of a driver up event. - Networking startup is now race-free by design. No need to waste 5 seconds at startup any more. DRIVER CHANGES: - Every driver publishes driver up events when starting for the first time or in case of restart when recovery actions must be taken in the upper layers. - Driver up events are published by drivers through DS. - For regular drivers, VFS is normally the only subscriber, but not necessarily. For instance, when the filter driver is in use, it must subscribe to driver up events to initiate recovery. - For network drivers, inet is the only subscriber for now. - Every VFS driver is statically linked with libdriver, every network driver is statically linked with libnetdriver. DRIVER LIBRARIES CHANGES: - Libdriver is extended to provide generic receive() and ds_publish() interfaces for VFS drivers. - driver_receive() is a wrapper for sef_receive() also used in driver_task() to discard spurious messages that were meant to be delivered to a previous version of the driver. - driver_receive_mq() is the same as driver_receive() but integrates support for queued messages. - driver_announce() publishes a driver up event for VFS drivers and marks the driver as initialized and expecting a DEV_OPEN message. - Libnetdriver is introduced to provide similar receive() and ds_publish() interfaces for network drivers (netdriver_announce() and netdriver_receive()). - Network drivers all support live update with no state transfer now. KERNEL CHANGES: - Added kernel call statectl for state management. Used by driver_announce() to unblock eventual callers sendrecing to the driver.
2010-04-08 15:41:35 +02:00
20100408:
/usr/src/etc/usr/rc updated: copy it (or merge it) to /usr/etc/rc.
20100318:
Gas2ack updates: Run 'make install' in commands/i386/gas2ack
20100317:
/usr/src/etc/system.conf updated to ignore default kernel calls: copy
it (or merge it) to /etc/system.conf.
The hello driver (/dev/hello) added to the distribution:
# cd /usr/src/commands/scripts && make clean install
# cd /dev && MAKEDEV hello
20100316:
/usr/man/man9 is required
# mkdir /usr/man/man9
20100308:
Include directory reorganization:
# mv /usr/include/ibm /usr/include/i386
2010-03-24 14:41:38 +01:00
# ln -s /usr/include/i386 /usr/include/machine
Install(1) updates:
# cd commands/simple && make /bin/install
20100303:
Gas2ack updates: Run 'make install' in commands/i386/gas2ack
20100215:
Make(1) has been replaced: Run 'make install' in commands/make
Mkdep updates: Copy commands/scripts/mkdep.sh to /usr/bin/mkdep
Make(1) needs mkfiles: Copy files in etc/mk to /etc/mk
ACK update: Copy commands/i386/acd.descr to /usr/lib/descr
End.a renamed:
-Copy /usr/lib/i86/end.a to /usr/lib/i86/libend.a
-Copy /usr/lib/i386/end.a to /usr/lib/i386/libend.a
-Copy /usr/gnu/lib/end.a to /usr/gnu/lib/libend.a
Asmconv updates: Run 'make install' in commands/i386/asmconv
20091212:
/etc/drivers.conf has been renamed to /etc/system.conf.
user "service" has been added to password file /etc/passwd.
20091006 (r5422):
OSS requires an improved make to be compiled; run "make install"
in /usr/src/commands/make before running "make world".
20070212 (r2751):
mkfs needs more memory to make an image; chmem it or do
# touch mkfs.c ; make /usr/bin/mkfs
in /usr/src/commands/simple.
20070118:
drivers.conf has been updated to include an ACL for mfs. it has
to be installed before rebooting after an update of the mount command.
20061222:
The archictecture-dependent/-independent split needs ARCH=<arch>
in /etc/make.conf, included by some Makefiles and sourced by
some shell scripts. To install it, type 'make install' in
src/etc, or simply copy the file over.
2006-12-22 14:36:18 +01:00
20061222:
Install binaries in the right order because the new readdir
implementation and the new mount program are incompatible
with older kernels and the new kernels require the new mount.
# cd /usr/src
# make includes
# make libraries
# make cmds
# make depend
# cd /usr/src/tools
# make hdboot
# make install
# cd ..
# make install
Installing fails for boot. Reboot the system
# reboot -x 'unset image; boot'
Now install everything
# cd /usr/src
# make install
20060818:
You need flex in your $PATH, which has become part of the base
system. This needs bigger binaries.
If you don't have flex yet, you can compile it first by doing:
# cp /usr/src/etc/binary_sizes* /etc
# binsizes big
# cd /usr/src/commands/flex-2.5.4
# sh build