What’s new in FreeBSD 10?
Gleb Smirnoff
glebius@FreeBSD.org
ruBSD 2013
Yandex
Moscow

December 14, 2013

Gleb Smirnoff glebi...
Introduction

Two years of development
23 September 2011

10 October 2013

head
stable/9

Gleb Smirnoff glebius@FreeBSD.org...
Introduction

Two years of development
23 September 2011

10 October 2013

head
stable/9

stable/10

10.0-RC1 available no...
Introduction

Outline
1

Userland changes
Packaging system
Toolchain
Developers tools
DNS tools
Other userland updates

2
...
Introduction

Outline
4

5

6

Kernel: security
capsicum(4) update
/dev/random improvements
Kernel: general improvements
c...
Introduction

Outline

7

Kernel: networking
changes
carp
packet filters

8

Conslusion
looking forward to FreeBSD 11

Gleb...
Userland changes

Packaging system

New generation packaging system

pkg(1)
Replaces pkg_tools in FreeBSD 10.0
Updates pac...
Userland changes

Packaging system

New generation packaging system

pkg(1)
Replaces pkg_tools in FreeBSD 10.0
Updates pac...
Userland changes

Toolchain

Compiler change

LLVM/Clang 3.3 is default compiler
(amd64, arm and i386)

Gleb Smirnoff glebi...
Userland changes

Toolchain

Compiler change

LLVM/Clang 3.3 is default compiler
(amd64, arm and i386)

Why?
BSD licensed ...
Userland changes

Toolchain

Compiler change

LLVM/Clang 3.3 is default compiler
(amd64, arm and i386)

Why?
BSD licensed ...
Userland changes

Toolchain

Toolchain

Moving towards external toolchain.

Gleb Smirnoff glebius@FreeBSD.org

What’s new i...
Userland changes

Toolchain

Toolchain

Moving towards external toolchain.
Portable make(1) imported from NetBSD

Gleb Smi...
Userland changes

Toolchain

Toolchain

Moving towards external toolchain.
Portable make(1) imported from NetBSD
Tools upd...
Userland changes

Developers tools

Developers tools

CVS -> subversion (lite)
ATF/kyua from NetBSD
Work in progress: gdb ...
Userland changes

DNS tools

DNS tools
Recursive resolver & tools
BIND -> unbound
dig(1) -> drill(1)
new host(1) implement...
Userland changes

DNS tools

DNS tools
Recursive resolver & tools
BIND -> unbound
dig(1) -> drill(1)
new host(1) implement...
Userland changes

DNS tools

DNS tools
Recursive resolver & tools
BIND -> unbound
dig(1) -> drill(1)
new host(1) implement...
Userland changes

Other userland updates

Other userland updates
freebsd-version(1) tool introduced
libyaml added to base
...
Userland changes

Other userland updates

Other userland updates
freebsd-version(1) tool introduced
libyaml added to base
...
Userland changes

Other userland updates

Other userland updates
freebsd-version(1) tool introduced
libyaml added to base
...
Userland changes

Other userland updates

Other userland updates
freebsd-version(1) tool introduced
libyaml added to base
...
Userland changes

Other userland updates

Installer

bsdinstall features ZFS root installation
Removed old installer sysin...
Kernel: virtualization

bhyve

bhyve(4) hypervisor
BSD hyper visor
(pronounced as “bee hive”)

Gleb Smirnoff glebius@FreeBS...
Kernel: virtualization

bhyve

bhyve(4) hypervisor
BSD hyper visor
(pronounced as “bee hive”)

Requirements:
host is amd64...
Kernel: virtualization

bhyve

bhyve(4) hypervisor
BSD hyper visor
(pronounced as “bee hive”)

Results in:
12k lines of co...
Kernel: virtualization

bhyve

bhyve(4) hypervisor
BSD hyper visor
(pronounced as “bee hive”)

Guest OSes supported:
FreeB...
Kernel: virtualization

guest improvements

Guest improvements

Xen and Xen HVM in GENERIC kernel
Microsoft Hyper-V driver...
Kernel: ARM port

ARM port

ARM soon to become Tier 1 platform
compiled with clang
superpages support
EABI by default

Gle...
Kernel: security

capsicum(4) update

capsicum(4) update
Capsicum - hybrid capability + UNIX access
control model. Introdu...
Kernel: security

capsicum(4) update

capsicum(4) update
Capsicum integrates further into FreeBSD:
notions of “capability”...
Kernel: security

capsicum(4) update

capsicum(4) update
Capsicum integrates further into FreeBSD:
notions of “capability”...
Kernel: security

capsicum(4) update

capsicum(4) update
Future integration in 10.1-RELEASE:
casperd(8) daemon
libcapsicum...
Kernel: security

/dev/random improvements

better random
Problem: hardware assisted randomness (RDRAND and
Padlock) no lo...
Kernel: security

/dev/random improvements

better random
Problem: hardware assisted randomness (RDRAND and
Padlock) no lo...
Kernel: security

/dev/random improvements

better random
Problem: hardware assisted randomness (RDRAND and
Padlock) no lo...
Kernel: security

/dev/random improvements

better random
Problem: hardware assisted randomness (RDRAND and
Padlock) no lo...
Kernel: general improvements

callout(9) new generation

callout(9) improvements

callout(9) - kernel subsystem to schedul...
Kernel: general improvements

callout(9) new generation

callout(9) improvements

callout(9) - kernel subsystem to schedul...
Kernel: general improvements

unmapped I/O

unmapped I/O
Problem: kernel doing I/O on behalf of userland process
maps the ...
Kernel: general improvements

unmapped I/O

unmapped I/O
Problem: kernel doing I/O on behalf of userland process
maps the ...
Kernel: general improvements

unmapped I/O

unmapped I/O
Problem: kernel doing I/O on behalf of userland process
maps the ...
Kernel: general improvements

unmapped I/O

unmapped I/O
Problem: kernel doing I/O on behalf of userland process
maps the ...
Kernel: general improvements

memory management

memory management changes
Kernel memory maps:
vmem(9) generic allocator f...
Kernel: general improvements

memory management

memory management changes
Kernel memory maps:
vmem(9) generic allocator f...
Kernel: general improvements

memory management

memory management changes
Kernel memory maps:
vmem(9) generic allocator f...
Kernel: general improvements

atomic close-on-exec

atomic close-on-exec

Prevents descriptor leak in presence of threads ...
Kernel: I/O and storage

improvements

storage changes
NAND flash support
NAND controller/chip/bus APIs
NAND disk GEOM clas...
Kernel: I/O and storage

improvements

storage changes
NAND flash support
NAND controller/chip/bus APIs
NAND disk GEOM clas...
Kernel: I/O and storage

improvements

storage changes
NAND flash support
NAND controller/chip/bus APIs
NAND disk GEOM clas...
Kernel: I/O and storage

GEOM

GEOM: work in progress

Targeted for 10.1-RELEASE:
direct dispatch in GEOM instead of two t...
Kernel: I/O and storage

GEOM

GEOM: work in progress

Gleb Smirnoff glebius@FreeBSD.org

What’s new in FreeBSD 10?

Decemb...
Kernel: I/O and storage

GEOM

GEOM: work in progress

Gleb Smirnoff glebius@FreeBSD.org

What’s new in FreeBSD 10?

Decemb...
Kernel: I/O and storage

3rd party filesystems

FUSE

FUSE moved to base from ports to improve stability

Gleb Smirnoff gleb...
Kernel: I/O and storage

3rd party filesystems

FUSE

FUSE moved to base from ports to improve stability
Giant-locked and G...
Kernel: networking

changes

networking changes

newest Infiniband OFED stack
native iSCSI Target and Initiator
etherswitch...
Kernel: networking

changes

networking changes

ZERO_COPY_SOCKETS
sendfile(2) on shared memory fd

Gleb Smirnoff glebius@Fr...
Kernel: networking

changes

networking changes

network byte order throughout the stack
counter(9): raceless and cheap st...
Kernel: networking

carp

new carp(4)

CARP isn’t pseudo-interface any more. Redundant address
is configured directly on a ...
Kernel: networking

packet filters

packet filters

pf(4): fork off OpenBSD, bringing in multithreading
ipfilter(4): update to...
Kernel: networking

Gleb Smirnoff glebius@FreeBSD.org

packet filters

What’s new in FreeBSD 10?

December 14, 2013

26 / 27
Conslusion

Gleb Smirnoff glebius@FreeBSD.org

looking forward to FreeBSD 11

What’s new in FreeBSD 10?

December 14, 2013
...
Conslusion

looking forward to FreeBSD 11

Questions?

Gleb Smirnoff glebius@FreeBSD.org

What’s new in FreeBSD 10?

Decemb...
Upcoming SlideShare
Loading in …5
×

Глеб Смирнов: Что нового в FreeBSD 10.0

9,664
-1

Published on

Только что вышедшая FreeBSD 10 содержит в себе много нововведений, таких как смена компилятора и системы пакетирования приложений, расширенная поддержка виртуализации, а также множество радикальных изменений в уже существующих подсистемах. В докладе Глеб коснётся наиболее важных новостей и расскажет, чего следует ожидать тем, кто поспешит перейти на новую стабильную версию.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
9,664
On Slideshare
0
From Embeds
0
Number of Embeds
16
Actions
Shares
0
Downloads
18
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Глеб Смирнов: Что нового в FreeBSD 10.0

  1. 1. What’s new in FreeBSD 10? Gleb Smirnoff glebius@FreeBSD.org ruBSD 2013 Yandex Moscow December 14, 2013 Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 1 / 27
  2. 2. Introduction Two years of development 23 September 2011 10 October 2013 head stable/9 Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? stable/10 December 14, 2013 2 / 27
  3. 3. Introduction Two years of development 23 September 2011 10 October 2013 head stable/9 stable/10 10.0-RC1 available now 10.0-RELEASE planned for 2 January 2014 Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 2 / 27
  4. 4. Introduction Outline 1 Userland changes Packaging system Toolchain Developers tools DNS tools Other userland updates 2 Kernel: virtualization bhyve guest improvements 3 Kernel: ARM port Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 3 / 27
  5. 5. Introduction Outline 4 5 6 Kernel: security capsicum(4) update /dev/random improvements Kernel: general improvements callout(9) new generation unmapped I/O memory management atomic close-on-exec Kernel: I/O and storage improvements GEOM 3rd party filesystems Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 3 / 27
  6. 6. Introduction Outline 7 Kernel: networking changes carp packet filters 8 Conslusion looking forward to FreeBSD 11 Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 3 / 27
  7. 7. Userland changes Packaging system New generation packaging system pkg(1) Replaces pkg_tools in FreeBSD 10.0 Updates packages from remote repository Is developed as a library + command line frontend Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 4 / 27
  8. 8. Userland changes Packaging system New generation packaging system pkg(1) Replaces pkg_tools in FreeBSD 10.0 Updates packages from remote repository Is developed as a library + command line frontend Don’t miss section at 11:40 by Vsevolod Stakhov! Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 4 / 27
  9. 9. Userland changes Toolchain Compiler change LLVM/Clang 3.3 is default compiler (amd64, arm and i386) Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 5 / 27
  10. 10. Userland changes Toolchain Compiler change LLVM/Clang 3.3 is default compiler (amd64, arm and i386) Why? BSD licensed (gcc > 4.2.1 is GPLv3) Fully C++11 compliant. Includes LLVM libc++. Always cross compiler. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 5 / 27
  11. 11. Userland changes Toolchain Compiler change LLVM/Clang 3.3 is default compiler (amd64, arm and i386) Why? BSD licensed (gcc > 4.2.1 is GPLv3) Fully C++11 compliant. Includes LLVM libc++. Always cross compiler. We still support gcc 4.2+ to build tier 2 arches. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 5 / 27
  12. 12. Userland changes Toolchain Toolchain Moving towards external toolchain. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 6 / 27
  13. 13. Userland changes Toolchain Toolchain Moving towards external toolchain. Portable make(1) imported from NetBSD Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 6 / 27
  14. 14. Userland changes Toolchain Toolchain Moving towards external toolchain. Portable make(1) imported from NetBSD Tools updated: patch(1): GNU BSD licensed fork of original Larry Wall sort(1): GNU own implementation byacc for yacc(1) flex for lex(1) Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 6 / 27
  15. 15. Userland changes Developers tools Developers tools CVS -> subversion (lite) ATF/kyua from NetBSD Work in progress: gdb -> lldb Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 7 / 27
  16. 16. Userland changes DNS tools DNS tools Recursive resolver & tools BIND -> unbound dig(1) -> drill(1) new host(1) implementation nslookup Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 8 / 27
  17. 17. Userland changes DNS tools DNS tools Recursive resolver & tools BIND -> unbound dig(1) -> drill(1) new host(1) implementation nslookup LDNS library Feature rich API, providing control over recursion, DNSSEC, TSIG, etc. Utilized by OpenSSH, drill(1) Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 8 / 27
  18. 18. Userland changes DNS tools DNS tools Recursive resolver & tools BIND -> unbound dig(1) -> drill(1) new host(1) implementation nslookup LDNS library Feature rich API, providing control over recursion, DNSSEC, TSIG, etc. Utilized by OpenSSH, drill(1) Plan for FreeBSD 11: caching, validating, secure resolver library with standard API Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 8 / 27
  19. 19. Userland changes Other userland updates Other userland updates freebsd-version(1) tool introduced libyaml added to base Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 9 / 27
  20. 20. Userland changes Other userland updates Other userland updates freebsd-version(1) tool introduced libyaml added to base Citrus iconv(3) in libc newest jemalloc 3.4.1 in libc Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 9 / 27
  21. 21. Userland changes Other userland updates Other userland updates freebsd-version(1) tool introduced libyaml added to base Citrus iconv(3) in libc newest jemalloc 3.4.1 in libc nvi editor supports wide character locales Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 9 / 27
  22. 22. Userland changes Other userland updates Other userland updates freebsd-version(1) tool introduced libyaml added to base Citrus iconv(3) in libc newest jemalloc 3.4.1 in libc nvi editor supports wide character locales wpa_supplicant/hostapd updated to 2.0 OpenSSH updated to 6.4 OpenSSL updated to 1.0.1e Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 9 / 27
  23. 23. Userland changes Other userland updates Installer bsdinstall features ZFS root installation Removed old installer sysinstall and auxiliary tools libdisk, libftpio, sade Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 10 / 27
  24. 24. Kernel: virtualization bhyve bhyve(4) hypervisor BSD hyper visor (pronounced as “bee hive”) Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 11 / 27
  25. 25. Kernel: virtualization bhyve bhyve(4) hypervisor BSD hyper visor (pronounced as “bee hive”) Requirements: host is amd64: Intel CPU with VT-x feature or AMD CPU with AMD-V feature no BIOS provided Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 11 / 27
  26. 26. Kernel: virtualization bhyve bhyve(4) hypervisor BSD hyper visor (pronounced as “bee hive”) Results in: 12k lines of code in kernel 14k lines of code in userland Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 11 / 27
  27. 27. Kernel: virtualization bhyve bhyve(4) hypervisor BSD hyper visor (pronounced as “bee hive”) Guest OSes supported: FreeBSD, OpenBSD GNU/Linux Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 11 / 27
  28. 28. Kernel: virtualization guest improvements Guest improvements Xen and Xen HVM in GENERIC kernel Microsoft Hyper-V drivers added VMware VMXNET3 driver added Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 12 / 27
  29. 29. Kernel: ARM port ARM port ARM soon to become Tier 1 platform compiled with clang superpages support EABI by default Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 13 / 27
  30. 30. Kernel: security capsicum(4) update capsicum(4) update Capsicum - hybrid capability + UNIX access control model. Introduced in FreeBSD 9.0. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 14 / 27
  31. 31. Kernel: security capsicum(4) update capsicum(4) update Capsicum integrates further into FreeBSD: notions of “capability” and “file descriptor” merge new APIs: cap_new(2) cap_rights_limit(2) Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 14 / 27
  32. 32. Kernel: security capsicum(4) update capsicum(4) update Capsicum integrates further into FreeBSD: notions of “capability” and “file descriptor” merge new APIs: cap_new(2) cap_rights_limit(2) capsicum(4) in GENERIC by default sandboxed applications: tcpdump(1), dhclient(8), rwhod(8), kdump(8), hastd(8), auditdistd(8), ctld(8), iscsid(8) Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 14 / 27
  33. 33. Kernel: security capsicum(4) update capsicum(4) update Future integration in 10.1-RELEASE: casperd(8) daemon libcapsicum(3) library sandboxing a lot of applications Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 14 / 27
  34. 34. Kernel: security /dev/random improvements better random Problem: hardware assisted randomness (RDRAND and Padlock) no longer trusted. Solution: run them through Yarrow. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 15 / 27
  35. 35. Kernel: security /dev/random improvements better random Problem: hardware assisted randomness (RDRAND and Padlock) no longer trusted. Solution: run them through Yarrow. Problem: not enough entropy on early boot. Solution: we can get some from device attach time. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 15 / 27
  36. 36. Kernel: security /dev/random improvements better random Problem: hardware assisted randomness (RDRAND and Padlock) no longer trusted. Solution: run them through Yarrow. Problem: not enough entropy on early boot. Solution: we can get some from device attach time. Problem: not enough entropy on first boot. Let bsdinstall save an entropy cookie for future boot. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 15 / 27
  37. 37. Kernel: security /dev/random improvements better random Problem: hardware assisted randomness (RDRAND and Padlock) no longer trusted. Solution: run them through Yarrow. Problem: not enough entropy on early boot. Solution: we can get some from device attach time. Problem: not enough entropy on first boot. Let bsdinstall save an entropy cookie for future boot. FreeBSD 11.0 plan: substitute Yarrow with Fortuna. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 15 / 27
  38. 38. Kernel: general improvements callout(9) new generation callout(9) improvements callout(9) - kernel subsystem to schedule delayed events. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 16 / 27
  39. 39. Kernel: general improvements callout(9) new generation callout(9) improvements callout(9) - kernel subsystem to schedule delayed events. New improvements: tickless event coalescing direct execution Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 16 / 27
  40. 40. Kernel: general improvements unmapped I/O unmapped I/O Problem: kernel doing I/O on behalf of userland process maps the I/O region into kernel address space. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 17 / 27
  41. 41. Kernel: general improvements unmapped I/O unmapped I/O Problem: kernel doing I/O on behalf of userland process maps the I/O region into kernel address space. Change of virtual memory map requires notification of other CPUs. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 17 / 27
  42. 42. Kernel: general improvements unmapped I/O unmapped I/O Problem: kernel doing I/O on behalf of userland process maps the I/O region into kernel address space. Change of virtual memory map requires notification of other CPUs. Solution: unmapped I/O. Required modification of file system layer, GEOM classes, disk drivers. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 17 / 27
  43. 43. Kernel: general improvements unmapped I/O unmapped I/O Problem: kernel doing I/O on behalf of userland process maps the I/O region into kernel address space. Change of virtual memory map requires notification of other CPUs. Solution: unmapped I/O. Required modification of file system layer, GEOM classes, disk drivers. Result: 30% of system CPU time saved in I/O bound tasks. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 17 / 27
  44. 44. Kernel: general improvements memory management memory management changes Kernel memory maps: vmem(9) generic allocator from NetBSD kernel memory map allocation backed by vmem(9) Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 18 / 27
  45. 45. Kernel: general improvements memory management memory management changes Kernel memory maps: vmem(9) generic allocator from NetBSD kernel memory map allocation backed by vmem(9) Mach VM radix tree instead of splay tree for vm_pages in vm_object Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 18 / 27
  46. 46. Kernel: general improvements memory management memory management changes Kernel memory maps: vmem(9) generic allocator from NetBSD kernel memory map allocation backed by vmem(9) Mach VM radix tree instead of splay tree for vm_pages in vm_object UMA performance/efficiency improvements per-CPU zones log warning when a zone hits limit Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 18 / 27
  47. 47. Kernel: general improvements atomic close-on-exec atomic close-on-exec Prevents descriptor leak in presence of threads or signals Suggested for future POSIX Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 19 / 27
  48. 48. Kernel: I/O and storage improvements storage changes NAND flash support NAND controller/chip/bus APIs NAND disk GEOM class NAND file system Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 20 / 27
  49. 49. Kernel: I/O and storage improvements storage changes NAND flash support NAND controller/chip/bus APIs NAND disk GEOM class NAND file system Resizing general support of “resize” notion in GEOM resizing of GEOM mirror (in 10.1-RELEASE) growfs(1) works on mounted filesystems Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 20 / 27
  50. 50. Kernel: I/O and storage improvements storage changes NAND flash support NAND controller/chip/bus APIs NAND disk GEOM class NAND file system Resizing general support of “resize” notion in GEOM resizing of GEOM mirror (in 10.1-RELEASE) growfs(1) works on mounted filesystems legacy ATA layer removed Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 20 / 27
  51. 51. Kernel: I/O and storage GEOM GEOM: work in progress Targeted for 10.1-RELEASE: direct dispatch in GEOM instead of two threads fine grained locking of CAM layer Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 21 / 27
  52. 52. Kernel: I/O and storage GEOM GEOM: work in progress Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 21 / 27
  53. 53. Kernel: I/O and storage GEOM GEOM: work in progress Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 21 / 27
  54. 54. Kernel: I/O and storage 3rd party filesystems FUSE FUSE moved to base from ports to improve stability Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 22 / 27
  55. 55. Kernel: I/O and storage 3rd party filesystems FUSE FUSE moved to base from ports to improve stability Giant-locked and GPL-contaminated filesystems removed from kernel: hpfs, ext2fs, ntfs, reiserfs, coda, xfs, nwfs, portalfs. Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 22 / 27
  56. 56. Kernel: networking changes networking changes newest Infiniband OFED stack native iSCSI Target and Initiator etherswitch(4): embedded Ethernet switch driver Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 23 / 27
  57. 57. Kernel: networking changes networking changes ZERO_COPY_SOCKETS sendfile(2) on shared memory fd Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 23 / 27
  58. 58. Kernel: networking changes networking changes network byte order throughout the stack counter(9): raceless and cheap statistic per-CPU counters IP/TCP/UDP dtrace(1) providers Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 23 / 27
  59. 59. Kernel: networking carp new carp(4) CARP isn’t pseudo-interface any more. Redundant address is configured directly on a real interface. % ifconfig igb0 10.0.0.112/27 vhid 112 % ifconfig igb0 igb0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500 ether 00:25:90:03:0e:fa inet 10.0.0.112 netmask 0xffffffe0 broadcast 10.0.0.127 vhid 112 media: Ethernet autoselect (1000baseT <full-duplex>) status: active carp: BACKUP vhid 112 advbase 1 advskew 0 Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 24 / 27
  60. 60. Kernel: networking packet filters packet filters pf(4): fork off OpenBSD, bringing in multithreading ipfilter(4): update to 5.1.2 (BSD license pledged) ipfw(4): no significant changes Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 25 / 27
  61. 61. Kernel: networking Gleb Smirnoff glebius@FreeBSD.org packet filters What’s new in FreeBSD 10? December 14, 2013 26 / 27
  62. 62. Conslusion Gleb Smirnoff glebius@FreeBSD.org looking forward to FreeBSD 11 What’s new in FreeBSD 10? December 14, 2013 27 / 27
  63. 63. Conslusion looking forward to FreeBSD 11 Questions? Gleb Smirnoff glebius@FreeBSD.org What’s new in FreeBSD 10? December 14, 2013 27 / 27
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×