Skip to content

Latest commit

 

History

History
91 lines (47 loc) · 1.9 KB

glibc.mdwn

File metadata and controls

91 lines (47 loc) · 1.9 KB

[[!meta copyright="Copyright © 2007, 2008, 2010, 2011, 2012, 2013, 2015 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 title="GNU C Library"]]

Sources

For concenience, we maintain our own [[source repository|source_repositories/glibc]].

Specifics

Ports

Porting glibc to a specific architecture is non-trivial.

The main port is x86, which is somewhat complete and is maintained. There were incomplete ports for Alpha, MIPS, and PowerPC, but they were unmaintained and have been removed.

[[Hurd-specific Port|hurd/glibc]]

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.

[[Maintenance|open_issues/glibc]]

Implementation Details

  • [[hurd/glibc/Hurd-specific API]]

  • [[open_issues/secure_file_descriptor_handling]]

  • [[signal/signal_thread]]

  • [[startup]]

Concepts

  • [[environment_variable]]

  • [[file_descriptor]]

  • [[process]]

  • [[signal]]

  • [[ioctl]]

Individual functions

Some of these are well-known as [[UNIX]] [[system call]]s.

  • [[fallocate]]

  • [[fork]]

  • [[mmap]]

  • [[poll]]

Debugging

Some hints for [[debugging]].

Open Issues

[[!inline pages=tag/open_issue_glibc raw=yes feeds=no]]