You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+13-11
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,5 @@
1
+
***OSv was originally designed and implemented by Cloudius Systems (now ScyllaDB) however currently it is being maintained and enhanced by a small community of volunteers. If you are into systems programming or want to learn and help us improve OSv please contact us on [OSv Google Group forum](https://groups.google.com/forum/#!forum/osv-dev).***
2
+
1
3
# OSv
2
4
3
5
OSv is an open-source versatile modular **unikernel** designed to run **unmodified
@@ -9,7 +11,7 @@ OSv has new APIs for new applications, but also runs unmodified x86-64 Linux
9
11
binaries **as is**, which effectively makes it a **Linux binary compatible unikernel**
10
12
(for more details about Linux ABI compatibility please read
The ```setup.py``` recognizes and installs packages for number of Linux distributions including Fedora, Ubuntu, [Debian](https://github.com/cloudius-systems/osv/wiki/Building-OSv-on-Debian-stable), LinuxMint and RedHat ones (Scientific Linux, NauLinux, CentOS Linux, Red Hat Enterprise Linux, Oracle Linux). Please note that only Ubuntu and Fedora support is actively maintained and tested so your milage with other distributions may vary.
70
+
The `setup.py` recognizes and installs packages for number of Linux distributions including Fedora, Ubuntu, [Debian](https://github.com/cloudius-systems/osv/wiki/Building-OSv-on-Debian-stable), LinuxMint and RedHat ones (Scientific Linux, NauLinux, CentOS Linux, Red Hat Enterprise Linux, Oracle Linux). Please note that only Ubuntu and Fedora support is actively maintained and tested so your milage with other distributions may vary.
69
71
70
72
## Building OSv kernel and creating images
71
73
@@ -106,10 +108,10 @@ export MAKEFLAGS=-j$(nproc)
106
108
107
109
In that case, make and scripts/build do not need the parameter -j.
108
110
109
-
For details on how to use the build script, please run ```./scripts/build --help```.
111
+
For details on how to use the build script, please run `./scripts/build --help`.
110
112
111
-
The ```.scripts/build``` creates the image ```build/last/usr.img``` in qcow2 format.
112
-
To convert this image to other formats, use the ```scripts/convert```
113
+
The `.scripts/build` creates the image `build/last/usr.img` in qcow2 format.
114
+
To convert this image to other formats, use the `scripts/convert`
113
115
tool, which can create an image in the vmdk, vdi or raw formats.
114
116
For example:
115
117
@@ -125,18 +127,18 @@ Please note that even though the **aarch64** version of OSv kernel should build
125
127
126
128
## Running OSv
127
129
128
-
Running an OSv image, built by ```scripts/build```, is as easy as:
130
+
Running an OSv image, built by `scripts/build`, is as easy as:
129
131
```bash
130
132
./scripts/run.py
131
133
```
132
134
133
-
By default, the ```run.py``` runs OSv under KVM, with 4 VCPUs and 2GB of memory. You can control these and tens of other ones by passing relevant parameters to the ```run.py```. For details on how to use the script please run ```./scripts/run.py --help```.
135
+
By default, the `run.py` runs OSv under KVM, with 4 VCPUs and 2GB of memory. You can control these and tens of other ones by passing relevant parameters to the `run.py`. For details on how to use the script please run `./scripts/run.py --help`.
134
136
135
-
The ```run.py``` can run OSv image on QEMU/KVM, Xen and VMware. If running under KVM you can terminate by hitting Ctrl+A X.
137
+
The `run.py` can run OSv image on QEMU/KVM, Xen and VMware. If running under KVM you can terminate by hitting Ctrl+A X.
136
138
137
-
Alternatively you can use ```./scripts/firecracker.py``` to run OSv on [Firecracker](https://firecracker-microvm.github.io/). This script automatically downloads firecracker and accepts number of parameters like number ot VCPUs, memory named exactly like ```run.py``` does.
139
+
Alternatively you can use `./scripts/firecracker.py` to run OSv on [Firecracker](https://firecracker-microvm.github.io/). This script automatically downloads firecracker and accepts number of parameters like number ot VCPUs, memory named exactly like `run.py` does.
138
140
139
-
Please note that in order to run OSv with best performance on Linux under QEMU or Firecracker you need KVM enabled (this is only possible on *physical* Linux machines, EC2 bare metal instances or VMs that support nested virtualization with KVM on). The easiest way to verify KVM is enabled is to check if ```/dev/kvm``` is present and your user can read from and write to it. Adding your user to the kvm group may be necessary like so:
141
+
Please note that in order to run OSv with best performance on Linux under QEMU or Firecracker you need KVM enabled (this is only possible on *physical* Linux machines, EC2 bare metal instances or VMs that support nested virtualization with KVM on). The easiest way to verify KVM is enabled is to check if `/dev/kvm` is present and your user can read from and write to it. Adding your user to the kvm group may be necessary like so:
140
142
```bash
141
143
usermod -aG kvm <user name>
142
144
```
@@ -145,7 +147,7 @@ For more information about building and running JVM, Node.JS, Python and other m
145
147
146
148
### Networking
147
149
148
-
By default the ```run.py``` starts OSv with [user networking/SLIRP](https://wiki.qemu.org/Documentation/Networking#User_Networking_.28SLIRP.29) on. To start OSv with more performant external networking:
150
+
By default the `run.py` starts OSv with [user networking/SLIRP](https://wiki.qemu.org/Documentation/Networking#User_Networking_.28SLIRP.29) on. To start OSv with more performant external networking:
0 commit comments