summaryrefslogtreecommitdiff
path: root/news/2016-05-18-releases.mdwn
blob: 33702f8cea6d3285c5c40a6e5f07aed33f356a58 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
[[!meta copyright="Copyright © 2016 Free Software Foundation, Inc."]]

[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts.  A copy of the license
is included in the section entitled [[GNU Free Documentation
License|/fdl]]."]]"""]]

[[!meta date="2016-05-18 15:30 UTC"]]

GNU Hurd 0.8, GNU Mach 1.7, GNU MIG 1.7 released.
[[!if test="included()" then="""[[!toggle id=full_news
text="Details."]][[!toggleable id=full_news text="[[!paste id=full_news]]"]]"""
else="
[[!paste id=full_news]]"]]

[[!cut id="full_news" text="""

We're pleased to announce new releases!

  * **GNU Hurd 0.8**,
    [NEWS](https://git.savannah.gnu.org/cgit/hurd/hurd.git/tree/NEWS?id=v0.8):

        Version 0.8 (2016-05-18)
        
        The netfs library is using the lockless reference-counting primitives
        for both peropen and node objects now, and the global reference
        counting lock has been removed.
        
        The integer hashing library gained a new interface to use non-integer
        keys.  It is now used in libdiskfs' and nfs' node cache, and the ftpfs
        translator.
        
        Several bugs in our native fakeroot tool have been fixed improving
        stability and correctness of the translation.
        
        The devnode translator and the hurd-slab library have been merged into this
        repository.
        
        The code has been cleaned up, and we fixed numerous bugs, most notably
        a crash in pfinet, a locking bug in libdiskfs, and an out-of-bounds
        access in ext2fs' block cache.

    Release tarballs may be downloaded from <ftp://ftp.gnu.org/gnu/hurd/>,
    <http://ftp.gnu.org/gnu/hurd/>, or checked out of Git,
    <https://git.savannah.gnu.org/cgit/hurd/hurd.git>.  SHA1 checksums:

        38585aed93645704477d91d01136e1ae750a5ecb  hurd-0.8.tar.bz2
        531d5035427830e87828a79bf6794531250784d0  hurd-0.8.tar.bz2.sig
        6383479f30933d760c6d981fdd37df27adb5f0bb  hurd-0.8.tar.gz
        63f58d392cb6e0c0ebd71e725938a13a5cab2392  hurd-0.8.tar.gz.sig

    The [[**GNU Hurd**|hurd]] is the GNU project's replacement for the [[Unix]]
    kernel.  It is a collection of [[servers|hurd/translator]] that run on the
    Mach microkernel to implement file systems, network protocols, file access
    control, and other features that are implemented by the Unix kernel or
    similar kernels (such as Linux).  More detailed: [[hurd/documentation]],
    [[hurd/what_is_the_GNU_Hurd]].

  * **GNU Mach 1.7**,
    [NEWS](https://git.savannah.gnu.org/cgit/hurd/gnumach.git/tree/NEWS?id=v1.7):

        Version 1.7 (2016-05-18)
        
        The code has been updated to work with newer versions of GCC, and numerous bugs
        have been fixed throughout the code, including a pageout deadlock.  The code
        uses integer types from <stdint.h> now instead of the old Mach types.
        
        The VM cache policy change has been merged.  The kernel now caches
        unreferenced VM objects unconditionally instead of using a fixed
        limit.
        
        The physical page allocator of the X15 kernel has been integrated, and
        is now used directly by the slab allocator.  This increases the kernel
        heap addressing important scalability issues.
        
        The gsync synchronization mechanism was added, similar to the Linux kernel's
        futexes, to allow efficient and powerful userland synchronization.
        
        Support for profiling kernel code from userland through sampling was added.

    Release tarballs may be downloaded from <ftp://ftp.gnu.org/gnu/gnumach/>,
    <http://ftp.gnu.org/gnu/gnumach/>, or checked out of Git,
    <https://git.savannah.gnu.org/cgit/hurd/gnumach.git>.  SHA1 checksums:

        4438c7c10f8eef019ada45b749c0796d620d08de  gnumach-1.7.tar.bz2
        6cdf299118066e3280dcc68f75477659fc783f7d  gnumach-1.7.tar.bz2.sig
        5474b2cdc01cb002149db08d745fdab741470c65  gnumach-1.7.tar.gz
        018aa0551e87c4b5eeb900934491811f46ab8b78  gnumach-1.7.tar.gz.sig

    [[**GNU Mach**|microkernel/mach/gnumach]] is the GNU distribution of the
    [[Mach microkernel|microkernel/mach]], upon which a GNU Hurd system is
    based.  The [[microkernel]] provides an [[Inter Process Communication
    (IPC)|ipc]] mechanism that the Hurd uses to define interfaces for
    implementing in a distributed multi-server fashion the services a
    traditional operating system kernel provides.  More detailed:
    [[microkernel/mach/documentation]].

  * **GNU MIG 1.7**,
    [NEWS](https://git.savannah.gnu.org/cgit/hurd/mig.git/tree/NEWS?id=v1.7):

        Version 1.7 (2016-05-18)
        
        MIG now has a test suite.  It includes a set of valid and invalid
        definition files that MIG will try to process.  For valid
        definitions, GCC will compile the stubs to check if valid C code was
        generated.
        
        The generated code uses integer types from <stdint.h> now instead of
        the old Mach types.
        
        Code that was hard-coding the word size has been identified and
        fixed.
        
        Support for the obsolete kinds of RPC routines 'functions',
        'procedures', and 'simple procedures' has been removed.
        
        MIG now emits code that casts objects translated from capabilities
        to the correct C type.

    Release tarballs may be downloaded from <ftp://ftp.gnu.org/gnu/mig/>,
    <http://ftp.gnu.org/gnu/mig/>, or checked out of Git,
    <https://git.savannah.gnu.org/cgit/hurd/mig.git>.  SHA1 checksums:

        25d87f0271678d044a8af1f45492a96bee32e486  mig-1.7.tar.bz2
        481dce92b8eb718231bf9d409c0e0c9337dc1f90  mig-1.7.tar.bz2.sig
        f1bd05d1b353653f49dbbb44a4624e65c7be0a2e  mig-1.7.tar.gz
        59f71517cd1be26635a27da423bcf75e2399a42e  mig-1.7.tar.gz.sig

    [[**GNU MIG**|microkernel/mach/mig/gnu_mig]] is the GNU distribution of the
    [[Mach 3.0 Interface Generator (MIG)|microkernel/mach/mig]].  This tool
    translates [[Remote Procedure Call (RPC)|rpc]] definition files to C code,
    and is required to compile any packages that are receiving or invoking
    RPCs, such as GNU Mach, GNU Hurd, and the GNU C Library (glibc) when
    compiled for the Hurd.  More detailed:
    [[microkernel/mach/mig/documentation]].

  * **glibc-2.19-hurd+libpthread-20160518**

    Based on the [[glibc]] 2.19 release, we include additional changes for GNU
    Hurd support, and bundle GNU Hurd's [[libpthread]].

    Snapshot tarballs may be downloaded from <ftp://alpha.gnu.org/gnu/hurd/>,
    <http://alpha.gnu.org/gnu/hurd/>, or checked out of Git,
    <https://git.savannah.gnu.org/cgit/hurd/glibc.git> and
    <https://git.savannah.gnu.org/cgit/hurd/libpthread.git>.  SHA1 checksums:

        3722b7f52aac89c66f064e1e6d19ec9b92ffc9e0  glibc-2.19-hurd+libpthread-20160518.tar.bz2
        69dfe1297013056b4b0d6436a1b3906c1bb67a52  glibc-2.19-hurd+libpthread-20160518.tar.bz2.sig
        2795bacc85c799a028577089c422ff4ef9b876bc  glibc-2.19-hurd+libpthread-20160518.tar.gz
        a7af1d2500f35413003f08801e258f3666dfcb87  glibc-2.19-hurd+libpthread-20160518.tar.gz.sig

    The [[**GNU C Library** (glibc)|glibc]] implements a system's standard
    library functions (as described by ISO C, and POSIX, for example).  An
    important part of the Hurd actually resides in glibc: here, the system
    interfaces are implemented on top of the [[Hurd IPC
    protocols|hurd/interface]].  This is different to the Linux port, where
    most simple system interfaces are in fact simply forwarded to/implemented
    as [[system_call]]s.

Many thanks to all the people who are helping!

If you want to give the Hurd a try, you may easily do so with [[Debian
GNU/Hurd|hurd/running/debian]].

The GNU Hurd system currently runs on 32-bit x86 machines.  To compile the
Hurd, you need a toolchain configured to target `i?86-gnu`; you cannot use a
toolchain targeting GNU/Linux.

Please read the [[FAQ]].
Bug reports should be sent to [[mailing_lists/bug-hurd]] or filed on
<http://savannah.gnu.org/bugs/?group=hurd>.  Requests for assistance
should be sent to [[mailing_lists/help-hurd]] or filed on
<http://savannah.gnu.org/support/?group=hurd>.  You can also find us on
the Freenode IRC network in the [[#hurd|IRC]] channel.

"""]]