What is open source in operating systems. Apache rules the web. What software can be open source?

In the 1990s, free software was considered exotic in the corporate environment, and the only significant competitor to the proprietary giants led by Microsoft for a long time there was a company called Red Hat, but from the second half of the 2000s the situation began to change rapidly. Open source software has become mainstream for many large companies, and dozens of reliable open source software vendors have emerged that have achieved proper high level expertise and experience to serve large and demanding corporate clients.

As of 2014, there are many players who are successfully competing with commercial software providers in a number of areas. In addition to Red Hat, these are open software-oriented organizations such as Google, Apache Software, Novell, SUSE, Acquia, etc. More and more OpenSource analogues of existing proprietary solutions are appearing on the market. Open source communities are becoming stronger and improving the quality and functionality of products.

As a rule, the development itself is offered free of charge, and it is commercialized through support and customization. This creates additional competition and, as a result, promotes the development of open software products.

In almost all industries and areas of activity, it is possible to use software based on open source code. Almost every proprietary software has a working open-source counterpart. source code:

  • Cisco VPN – OpenVPN,
  • Oracle Database – PostgreSQL,
  • Microsoft Hyper-V – OpenVZ,
  • MS Active Directory - Samba,
  • Avaya IP Office – Asterisk, etc.)

Based on specific business objectives, you can compare the cost and time frame for implementing a solution based on proprietary software and OpenSource.

Open source software in countries around the world

USA

In March 2016, the US Presidential Administration presented a preliminary version of the bill on use by government departments. Market participants supported the initiative.

According to a document released by the White House, American government agencies can share the source code for certain projects with each other in order to increase their efficiency and eliminate the need to develop the product from scratch. Read more about this.

India

In October 2011, it was reported that the Punjab government had decided to purchase software from Microsoft, reversing a 2008 decision to install free software on 46,000 computers in 4,956 schools. "We have decided to reconsider the previous decision," said Baldeo Purushartha, minister school education state.

The Punjab government launched an IT program for students of classes 6 to 12 in 2004-2005. The Punjab ICT Education Department is implementing a project under which computer labs with necessary equipment, software and broadband Internet connection. At the same time, the Bharat Operating System Solutions (BOSS), tested and certified by the Linux Foundation for use in schools, received wide support at the government level due to its affordability.

According to the Punjab State President, as of 2008, the minimum cost for upgrading Microsoft-licensed software - covering 16,578 computers at Rs 1,375 per computer - was Rs 23 million over five years. For this reason, in September 2008, the Government of Punjab decided to purchase and install BOSS in all government primary schools and stated that from 2011, all primary school students will be trained in the use of BOSS. Work was completed in April 2011, including the training of 6,600 teachers.

But on August 8, 2011, after a comprehensive review of the results of the project, the head of the Punjab state school education department announced that `the school education department will return to using Microsoft software... for teaching children in the primary classes of government schools.' The cost of updating the licenses will be around Rs 7 million, of which Rs 3.77 million has already been allocated by the government.

Moreover, around 90,000 computers will be installed in government schools connected to the EDUASAT network through which students will be able to watch live broadcasts of various lectures. According to preliminary calculations, the initial price of the software and Microsoft licenses will be 30 million rupees. This amount does not include the price of equipment, etc.

Earlier, in February 2011, it was decided to use BOSS to work in the EDUASAT network. But now, in the words of Purushart: `In order to full use installed computers, in which students will learn Microsoft software, we want to use Microsoft in EDUASAT` as well.

Note that Punjab was the first state to actively implement Linux in schools. Currently, BOSS is still used in the Indian states of Haryana, Gujarat, Kerala and Uttar Pradesh.

Germany

According to a recent study by the Georgia Institute of Technology (USA), Germany ranks fourth in the world in terms of open source software penetration in the public sector. In 2001, the German Ministry of Foreign Affairs (and with it all embassies and consulates) switched to Linux. The consulting company McKinsey has confirmed several times that the foreign policy department saves significantly by using Linux, OpenOffice and Thunderbird instead of the Microsoft suite of Windows, Office and Outlook. It was even said that diplomats spend less on IT than employees of any other government agency.

But the trick is that shareware software is sometimes more expensive to operate than unconditionally paid software. Dinosaurs like Microsoft can provide better and cheaper support than small Linux support companies. And sometimes it is more profitable to buy a license. Therefore, for example, the same German foreign policy agency this year is returning to Microsoft software. Officials valued the permanent problems with technical support in terms of money, as well as the difficulty in mastering open software (many employees complained about this) and spoke in the spirit that the stingy pays twice.

Russia

Decisions of the government and the President of the Russian Federation Dmitry Medvedev, domestic open source software was introduced in all schools in 2008 Russian Federation and will be installed in all government and budget organizations to ensure national security in the IT sector.

Project "Penguin" - implementation of Open Source Software

Project "Penguin" is a project for the introduction of Linux Technologies and Open Source Software into schools and universities in Russia in 2009-2010. funded by FAO - Federal Education Agency of the Russian Federation. According to the contract for Project Penguin, three stages must be completed:

  1. Finalization of textbooks and methodological support
  2. Development technical support and Internet portals
  3. Training 60 thousand teachers in Linux technologies and Open Source

1. The development of basic Textbooks in computer science for universities and schools based on Open Source software in accordance with state standards and the requirements of the Unified State Exam in computer science and ICT was completed in 2008-09. 2. Development of Internet support with basic computer science textbooks and basic Open Source software packages for Windows and Linux was carried out in 2005-2009. 3. Trial courses for computer science teachers and school teachers on Linux Technologies and Open Source Software were conducted and tested in 2005-2007. together with the Moscow pedagogical universities Moscow State Pedagogical University and Moscow State Pedagogical University with the support of UNESCO, IBM Corporation and Linux Center.

    • Higher Attestation Commission, prof., doctor of computer sciences 16:32, October 15, 2009 (UTC)

Open source software - opinion of the President of the Russian Federation

At this meeting D.A.Medvedev said:

"...If we sit down now completely on the foreign needle software and “mortgage” for many years, then we will not get off it. And we will develop contrary to global trends. At the same time, it is also impossible to announce that tomorrow we will transfer all computers in schools (and potentially a much more serious network of computers) to open source programs with a free license, because there are connection problems, there are technological problems. That is, there is no complete readiness here either. What to do?

We offer take a compromise path, and this path has now begun to be realized. For three years, purchase a license package of basic programs (meaning primarily OS, archivers, offices, editors, “photoshop” - in general, everything that is usually used by users, including in schools), but at the same time do not stop, but work on a domestic software package with open access (and now we Let's talk about this in more detail), so that then, ultimately, in three years (if it happens earlier, even better),

Create one optimal model , in which schools and, potentially, all government agencies will be able to choose what they need: either continue to use commercial products at their own expense, and not at the expense of federal funds, or switch to a system that is already completely adapted, acceptable to them, based on open access , open source..."

December 2010: Putin ordered the transfer of power to Linux

The history of the document on the transition of government authorities to free software has been going on since 2007, when the Ministry of Information and Communications began to develop the “Concept for the development of the development and use of free software in the Russian Federation,” which was published in the spring of 2008. However, the resignation of Minister Leonid Reiman and the appointment of Igor Shchegolev's appointment to his position entailed a revision of the concept.

Despite this, in the spring of 2008, a few days before the transfer of power to Dmitry Medvedev, Vladimir Putin, while still president of Russia, mentioned a migration plan to SPO federal institutions in the list of his instructions to the government, thus setting this task for himself.

Open Source Packages for Schools

Open Source Packages for schools are designed for installing programs in schools and home computers with Windows and Linux operating systems. The Linux Live-CD is designed to work with Open Source software on home computers with Windows without installing Linux on the computer.

Decisions of the Government of the Russian Federation domestic open source software in 2008 and 2009 was sent to all schools in the Russian Federation and will be installed in all government and budget organizations to ensure national security in the IT field.

Open Linux operating system

Open office software package

Open office suite can be freely installed and used not only on personal computers with Linux OS, but also on computers with Windows OS. At the same time, documents and files prepared in the MS Office suite can be read and processed in the Open Office suite.

Composition of the Open Office suite:

  1. OpenOffice.org Writer- Writer text editor with rich capabilities for creating letters, books, reports, newsletters, brochures and other documents, compatible with MS Office.
  2. OpenOffice.org Calc- Calc spreadsheets have the advanced analysis, charting, and decision-making capabilities expected of high-end spreadsheets, compatible with MS Office.
  3. OpenOffice.org Impress- Impress presentation editor provides all common media presentation tools such as special effects, animation and drawing tools. Compatible with file format Microsoft PowerPoint, and can also save your work in numerous graphic formats, including Macromedia Flash (SWF).
  4. OpenOffice.org Base- Base database provides tools for working with databases within a simple interface. It can create and edit forms, reports, queries, tables, views and relationships so that managing the associated database is almost the same as in others popular applications databases. Base includes HSQLDB as its default relational database engine. It can also use dBASE, Microsoft Access, MySQL or Oracle, or any ODBC or JDBC compatible database.
  5. Open Office Draw vector graphics editor Draw, which can do everything from simple diagrams or flowcharts to 3D artwork. Draw can import graphics from many common formats and save them in more than 20 formats, including PNG, HTML, PDF and Flash.
  6. Gimp- raster graphic Gimp editor, a program for creating and processing raster graphics. Vector graphics are partially supported.

Open text editor Writer

OpenOffice.org Writer - word processor And visual editor hypertexts, is part of OpenOffice.org and is free software (released under the LGPL license).

Writer is similar to Microsoft Word and the functionality of these editors is approximately equal. Provides the user with modern tools for typing, editing and formatting documents.

Along with familiar interface and functionality:

* creating and designing text paragraphs and pages, * adding sections and footers, * inserting images and multimedia objects, * preview and printing of documents, * recording changes and reviewing texts, * automatic design of tables of contents, indexes and footnotes, * adding macros and controls, * working with tables, * spell checking and much more,

The concept of applying styles is a great solution that makes it easier to create and format documents. Working with styles is supported in all components of the office suite, but it is in OpenOffice.org Writer that it is most fully implemented.

Five groups of styles: paragraphs, characters, pages, frames and lists - provide the user with many options for easily formatting documents. A special “Styles and Formatting” panel allows you to manage styles, changing existing ones and creating new ones. And the more complex the document, the more often it has to be changed, the more obvious the advantage of styling becomes.

Another tool, Navigator, provides the ability to quickly navigate through a document by selecting headings, footnotes, sidebars, or other objects as reference points.

As with other components, Writer has a large number of add-ons (extensions) that improve the basic functionality of the component or provide additional functions, such as checking grammar or publishing on MediaWiki.

Writer supports a wide range of formats for importing and exporting files, including saving to PDF and importing docx. And sending a file by email is done with one click of a button.

Open Calc Spreadsheets

start: OpenOffice.org Calc is an application for working with spreadsheets. With its help, you can analyze input data, do calculations, make forecasts, and combine data with different sheets and tables, build charts and graphs.

Calc is a current and popular OpenOffice.org component for working with spreadsheets in the business environment. A favorite tool for accountants and managers for creating reports.

Step-by-step input of formulas into spreadsheet cells using the Wizard facilitates the formation of complex and nested formulas, demonstrates descriptions of each parameter and the final result at any input stage.

Conditional formatting and cell styles help you organize your data, and pivot tables and graphs show the results of the work.

More than two dozen file import and export formats, including text import functions, allow you to operate with almost any data. You can also use a special tool to import data from other sources, such as databases, and you can create an updated range so that the imported data is always up to date.

Links between different spreadsheets and joint editing of data are supported (starting with OpenOffice.org version 3.0).

Various settings are available for printing finished sheets on a printer: scale, margins, footers. And the built-in spell check, like in a text editor, will improve the quality of the finished report.

Open vector graphics editor Draw

OpenOffice.org Draw- a vector graphics editor, comparable in functionality to CorelDRAW, part of OpenOffice.org.

Vector graphic editor Draw is a drawing tool that uses vector graphics. It contains a number of services that allow you to quickly create all types of drawings. Vector graphics allow you to save and display images as vectors (two dots and a line) rather than as a series of pixels (dots on the screen). Vector graphics make it easy to save and resize images.

graphic editor Draw ideally integrated into the OpenOffice.org system, which makes it very easy to exchange drawings between any modules of the system. For example, if you create a drawing in Draw, you can easily use it in a Writer document by copying and pasting. You can also work with graphics directly in the Writer and Impress modules, using a subset of the functions and tools from Draw.

The package includes fully functional "connectors" between shapes that can use a variety of line styles and allow you to draw drawings such as flowcharts.

The need for a vector editor as part of an office suite is beyond doubt. The scope of application of such an editor is quite wide: from the simplest drawings and advertisements to diagrams, diagrams and drawings.

In addition to your own objects, you can insert diagrams, formulas, and other elements created in other OpenOffice.org components into your drawings. Draw also supports exporting raster images in most formats, both common and specialized.

Draw has it all necessary tools, inherent vector editors:

* Connecting lines, dimension lines, tables. * Working with text and text effects ;* Change color fill, shadows, transparency; * Placing, linking and managing objects using slides, layers and guides;*Supported

In addition to your own objects, you can insert diagrams, formulas, and other elements created in other OpenOffice.org components into your drawings. Draw also supports exporting raster images in most formats, both common and specialized.

various operations

over objects: addition, subtraction, grouping and transformation of shapes; * Drawing three-dimensional objects;* Drawing with

graphic primitives

, Bezier curves; * Effects: lighting, morphing and duplication; Using the Gallery (object storage) allows you to organize existing images, and support for text styles saves time when creating objects of the same type.

Open relational database Base

Base is an open relational database that allows you to create, edit and process tabular data.

Users are provided with quite big set data and table processing tools: editors of forms, queries, reports, database tables. With their help, you can analyze input data, do calculations, make forecasts, summarize data from different sheets and tables, build charts and graphs.

The query editor allows you to create almost the entire range of SQL queries to databases for selecting, changing, and adding data. Nested queries and queries with parameters are supported. The visual part of the editor will simplify the process of constructing queries for a novice user.

The form editor allows you to use almost any standard tool database content management. It provides controls for text, numeric, binary fields, lists, drop-down lists, tables, buttons, calendar and other elements.

a tool for working with external data sources plus a built-in HSQLDB DBMS. Using Base, you can add, delete, edit database records: MySQL, HSQLDB (usually bundled with OpenOffice.org), PostgreSQL, DB2, Oracle.

It is also possible to work with DBF tables, MS Access, address books, text files, as well as spreadsheets created in OpenOffice.org Calc or MS Excel.

Access to external sources data transfer is carried out using ODBC, JDBC, SDBC and other technologies. The full list of supported technologies and data sources depends on the operating system used.

More complex management and data processing is performed using macros and the OOBasic programming language.

The table editor will help you create and manage tables in the embedded HSQLDB database, as well as with some possible restrictions for other databases.

Base has a built-in report wizard with basic functions for creating reports or tables or queries. But there is more best tool creating reports - Sun Report Builder. This tool allows you to create reports of almost any complexity. It supports grouping, execution of built-in custom functions, conditional formatting. The result of SRB's work is a Writer or Calc document, which can later be printed or edited.

With Base you can create data sources. For example, by organizing a connection to external base data in Base and filtering the necessary data with an SQL query, you can work with this data in OOo Calc.

Open programming systems

  1. FreePascal 2.0.4 - Free Pascal and Object Pascal Compiler - Lazarus or KDevelop is recommended as an IDE.
  2. Eclipse- An open set of open programming systems for the development of modular cross-platform applications.
  3. Gambas- free programming system 2)VISUAL BASIC IDE for creating programs based on Qt, GTK, OpenGL, SDL and CGI WEB

Minimum Open Source Package for Schools

Includes Open Source programs

  1. graphical environment XFCE;
  2. fast text editor Abiword;
  3. Gnumeric spreadsheet editor.

Minimum package Open Source programs:

  1. Office package: OpenOffice.org 2.3;
  2. Web browser: Firefox 2.0;
  3. Image Editor: Gimp 2.4;

Additional disk Contains programs for schools and other educational institutions:

  1. Web page editor Bluefish;
  2. Programming languages pascal ( Free Pascal and Lazarus), basic (gambas), logo (KTurtle);
  3. Systems mathematical calculations(Maxima and Scilab);
  4. Antivirus ClamAV and caching Squid server, PostgreSQL DBMS

Optimized for installation and operation on computers from 128 to 256 MB of memory and a processor from PI 233 MHz.

Linux LiveCD

Linux CD Live-CD is designed to work with Open Source software on home computers with Windows without installing Linux on the computer.

CD L Inux Live CD optimized to work with a CD for installing Linux on a computer with 128 to 256 MB of memory and a PI 233 MHz processor. Sessions are supported, allowing you to save settings and documents in home folder between reboots.

The option with the lowest hardware requirements provides acceptable performance even on systems with 128 MB of memory.

Includes the XFCE graphical environment; This distribution includes the lightweight and fast text editor Abiword and the spreadsheet editing program Gnumeric.

In addition, the first disc contains:

  1. Office package: OpenOffice.org 2.3;
  2. Web browser: Firefox 2.0;
  3. Email: Claws Mail;
  4. Working with images: Gimp 2.4;
  5. and more than 1000 programs that allow you to solve a wide range of problems.

School server

School Server- a server operating system with wide functionality, fully customizable via a web interface through which components are managed.

Compound:

  1. web applications to help organize the educational process:
  2. Moodle is a system for remote and interactive learning, contains sample courses;
  3. Mediawiki - a system for organizing a “knowledge base” using Wiki technology;

for organizing a local network:

  1. DHCP and DNS servers;
  2. Squid proxy server (with support for displaying access statistics);
  3. firewall;
  4. network interface management;
  5. exact time server;
  6. file servers:
  7. Samba server (for organizing access to directories accessible via the Samba protocol);
  8. FTP server;
  9. interface for creating local mirrors of repositories;
  10. CUPS print server;
  11. MySQL (for Moodle and Mediawiki);
  12. Apache2 web server;
  13. interface for system updates (including setting up updates);
  14. backup;
  15. account management (the ability to import accounts from the 1C:Chronograph system);
  16. mail server with support for anti-virus and anti-spam tools.
    • Higher Attestation Commission, prof., doctor of computer sciences 04:29, July 19, 2009 (UTC)

Open source software in Russia

Currently, open source software is beginning to become widespread in the Russian education system, one of the reasons for which is the widespread illegal distribution of commercial closed import software.

By government decisions, domestic open source software was introduced in all schools of the Russian Federation in 2008 and will be installed in all government and budget organizations to ensure national security in the IT field.

Open source software can be freely installed and used in all schools, offices, universities and all personal computers and in all government, budgetary and commercial organizations and institutions in Russia and the CIS countries in accordance with the General Public License (GPL).

    • Higher Attestation Commission, prof., doctor of computer sciences 09:50, July 16, 2009 (UTC)

Open source software in schools and universities

Using Open Source Software and Linux Technologies in Moscow schools and universities began in 2005-2006. after holding school-seminars “Linux Technologies and Open Source Software” together with IBM Corporation and UNESCO on the basis of Moscow State Pedagogical University.

In 2007 By decisions of the Government of the Russian Federation, basic open source software packages were recommended for implementation in all schools in Russia and use for teaching computer science and information technology in all computer science classrooms of all schools in the Russian Federation.

Background basic packages computer science programs, their development, implementation and distribution to schools in Russia and the CIS countries began in the late 90s, when basic software packages were developed for domestic personal computers BK, Corvette and UKNC and distributed as Open and Free Software for schools.

All secondary schools in Russia in 2008-2009 received basic packages of licensed commercial and free open source software for teaching computer literacy, the basics of computer science and new information technologies with the Windows and Linux operating systems.

In four regions of Russia in 2008-2009 Work has been launched to introduce and use basic software packages for computer science and computer science classrooms in secondary schools, and training has begun for teachers and computer science instructors in the technology of working with open source software in Windows and Linux environments.

According to Doctrine of Information Security of the Russian Federation, training in computer literacy and informatics should be accompanied by legal education in training in the protection of information in computers, protection from computer viruses, porn sites and ensuring information security in local and global computer networks based on free open source software.

In 2007, the first computer science textbooks were released for universities and schools to teach computer science in accordance with state education standards with free open commercial proprietary software in Windows and Linux.

    • Higher Attestation Commission, prof., doctor of computer sciences 09:51, July 16, 2009 (UTC)

Definition of Open Source

Definition of Open Source) is used by the Open Source Initiative to determine the extent to which a software license complies with Open Software (Open Source) standards. Based on the Debian Free Software Directives, mostly written by Bruce Perens.

The definition consists of ten license requirements to Open Software:

  1. Free distribution. This means that the license should not impose restrictions on the sale and distribution of the software.
  2. Available source texts. Even if the software does not come with source code, the source code should be easily accessible.
  3. Possibility of modification. Simple Possibility reading the source texts does not allow you to experiment with them and release modifications
  4. Even if the author's source code is inviolable, derivative programs and their source codes should be freely distributed.
  5. No discrimination against people or groups of people. Some countries, such as the USA, have some restrictions on software exports.
  6. No discrimination based on purpose of use. Free license must allow all types of activities, including genetic and nuclear research, commercial applications, etc.
  7. License distribution. The rights associated with Open Source Software should apply to all users of the program without entering into additional agreements, such as non-disclosure agreements.
  8. The license must not restrict other software products. With the exception of banal incompatibility, the user has the right to choose what to use.
  9. The license must be technology neutral. That is, the license must not require anything from the interface or technology used in the derivative program.
  10. The license should not be tied to a specific product. Rights to program code should not depend on whether the program is part of a product. A person who distributes a program separately from the collection or transfers part of the code to another product has the same rights as the collection gave.
- 31.68 KB

"Modern open source operating systems"

Creation of an operating system. 4

Operating System Definition 4

Basic OS 4 features

Additional OS features. 4

Open Source OS 6

Difference between open and closed source operating systems. 6

CHAPTER 1

Creation of an operating system.

The predecessor of the operating system (OS) is considered to be utility programs, as well as their libraries. They began to be developed in the late 1940s. in the 1950-1960s, ideas were implemented that determined the functionality of the OS:

1) Time sharing, multitasking

Allowed the creation of multi-user systems in which there was one central process, and a block random access memory joined the terminals.

2) Separation of powers

Made it possible to avoid the possibility of changing one program's data from another program into the computer's memory.

3) Real time

Allowed simultaneous maintenance of production processes and ongoing tasks.

4) File systems and structures

It was used as a way to store any data on other storage devices.

Operating System Definition

So, the OS is a set of programs that provides work with files, execution of application programs, and outputs and inputs data. The OS also provides control of the computer hardware as a whole. In other words, the OS is the first set of programs that loads when you turn on the computer. Any OS has basic and additional functions.

Basic OS features

1) Execution of program requests, i.e. This is the output and input of data, launching programs, as well as stopping them, both freeing and allocating additional memory.

3) Access to input and output devices.

4) Distribution of RAM between processes, organization of virtual memory.

5) Control access to hard disk data

6) Providing a user interface

7) Storing information about system errors

Additional OS features.

Additional features are:

1) Multitasking

2) Distribution of the necessary computing system resources between processes

3) Restricting access to resources

4) Data exchange, mutual synchronization

5) Protect the system, data, programs from the actions of different users

6) Differentiation of access rights and multi-user system.

Having examined the functions of the OS, it is worth mentioning its components:

1) bootloader is system software that loads the OS after turning on the computer.

2) The kernel is the most central part of the OS, which provides applications with access to computer resources.

3) The command processor serves to provide a command line interface. The command processor itself is an independent programming language that has its own syntax and functions.

4) Drivers – computer program, through which other programs gain access to the software of a certain device. The driver itself is not required to interact with other hardware devices, it can only imitate them.

5) Interface - the interface between two devices, systems or programs, which is determined by their characteristics.

2 OS groups are defined. The first includes systems whose set of programs controls the equipment. The second group includes systems whose set of programs control other programs.

Many devices in our world can do without an OS altogether. So what are they for?

  1. Many programs need to perform the same routine actions. For example, entering the same word and displaying it on the screen. This may require the execution of many machine instructions. In order not to program them every time, the OS uses system libraries.
  2. It is necessary to distribute powers between users and system programs so that users can protect their data and an error in the program does not cause big troubles.
  3. The operator himself must be able to control the execution processes of individual programs. For this purpose, the shell and sets of snails are used. They themselves may be part of the OS. So, the OS can be described as:

a) OS with universal mechanism access to data.

b) OS with separation of powers

c) time-sharing OS

Open source OS

As we know, in modern world All devices have an OS. Therefore, it is customary to distinguish between open and closed operating systems.

An open source OS is a system that can be edited by any user without violating the license or law. This system is very convenient for smartphones, as it allows users to “customize the phone to suit themselves”: add various functions, rewrite drivers, insert touch support. It should be noted that such conditionally open operating systems as iPhone OS, Symbian do not allow interfering with the system itself, but allow you to write your own programs. For computers, the open source operating system is Linux.

Difference between open and closed source operating systems.

As mentioned above, open source operating systems allow the user to “build their own device”. Closed-source operating systems do not give the user the right to interfere with the system itself. Users can only buy programs, or use free ones, as well as install service folders. Closed operating systems include Windows and Mac OS.

Closed operating systems are characterized by licensing and fees; open operating systems do not require the purchase of a license and are distributed free of charge.

CHAPTER 2

Linux

Linux is an open source operating system whose development began in 1983. Richard Stolliman - famous programmer created the GNU project. By the beginning of the 1990s, many system programs and libraries were already ready. In 1991 Linus Torvalds created the core of this system. Thus, from all the components and other software, a working free OS was created.

At first, Linux was distributed only to volunteers, but over time, companies began to contribute and this OS became a significant force. Now Linux ranks first in the smartphone market (64%). In the home computer market, Linux ranks 3rd (12%) (the most popular distribution is Ubuntu, which is preferred by 20 million users).

The most popular OS for smartphones and tablet devices is Android. This system is based on the Linux kernel. Linux distributions popular with various government agencies. For example, the Federal Government of Brazil actively uses this OS, and the Russian military is developing its own Linux distribution.

On Linux systems, users work through the command line interface, or as it is also called CLI, GUI user interface (GUI), through the controls of the associated hardware.

The command line is particularly well suited for automating repetitive or delayed tasks, and also provides a very simple inter-process communication mechanism.

Graphical terminal emulator programs are often used to access the command line from a Linux desktop.

Linux systems typically implement a command line interface using the operating system shell, which is also the traditional way to interact with a Unix system.

iPhone OS

iPhone is a mobile operating system developed and released by the American company Apple in 2007. This system was originally designed for iPhone and iPod touch, later and for devices such as iPad and Apple TV.

Unlike Windows Phone and Google Android, is available only for devices manufactured by Apple. iPhone is based on Mac OS X and uses the same POSIX-compliant set of core Darwin components.

As of May 12, 2012, the App Store contains more than 750 thousand applications for iOS, which together have been downloaded more than 30 billion times.

Cosmos

Cosmos is an open source operating system written in the C programming language. It contains a Microsoft Intermediate Language compiler that allows you to generate complete program modules.

The current release of Cosmos is Milestone 5, but the creators are working on future releases. Most of the work on Cosmos currently is aimed at developing network interface, however, the system already supports some network cards. There are currently two versions of Cosmos, the (later) source version and the release version (known as the custom kit). The source version is for those who want to help develop the kernel, while the custom kit is for those who simply want to use Cosmos to develop their own operating system.

Android

Android network operating system for communicators, tablet computers, e-readers, digital players, based on the Linux kernel. It was originally developed by Android Inc., which was later bought by Google. Subsequently, Google initiated the creation of the Open Handset Alliance or (OHA), which is now engaged in supporting and further developing the platform. Android allows you to create Java applications that control the device through Google-developed libraries. Android Native Development Kit creates applications written in C and other languages.

75% of smartphones sold in the third quarter of 2012 were equipped with the Android operating system.

Some observers note that Android performs better than one of its competitors, Apple iOS, in a number of features, such as: web surfing, integration with services Google Inc. and others. Android, unlike iOS, is an open platform, which allows you to implement more functions on it.

Unlike iOS and Windows Phone 7, Android full implementation of the Bluetooth stack, which allows, among other things, the transfer and reception of files.

Android devices usually have a MicroSD card reader that allows quick transfer files from computer to phone, bypassing speed restrictions of USB and other transfer methods without removing the memory card; In addition, in iOS and Windows Phone 7 it is not possible to directly transfer any files to or from the phone except through synchronization programs (iTunes and Zune), while Android phones export the file system of the memory card as a USB mass storage device (“ flash drive").

Despite the initial ban on installing programs from “unverified sources,” this restriction can be disabled using standard means in the device settings. This is what allows you to install programs on phones and tablets without an Internet connection. For example, users who do not have a Wi-Fi access point and do not want to spend money on Mobile Internet, which usually costs too much. It also allows everyone to write Android applications for free and test them on their device.


Description of work

So, the OS is a set of programs that provides work with files, execution of application programs, and outputs and inputs data. The OS also provides control of the computer hardware as a whole. In other words, the OS is the first set of programs that loads when you turn on the computer. Any OS has basic and additional functions. The predecessor of the operating system (OS) is considered utilities, as well as their libraries.

  • Development for the Internet of Things
  • Over the past decade, a large number of open source OS projects have moved from the market mobile communications to the Internet of Things. In this article we will look at which of the open projects are aimed at IoT (Internet of Things).

    Keep in mind that almost all modern open OSs make some claim to be suitable for IoT use. But we'll only look at those that really focus on things like: low memory consumption, high energy efficiency, modular and customizable communication stack and strong support for wireless and touch technologies. Also, some projects emphasize their developments in the field of IoT security and real-time. Realtime can be really important in industrial IoT, although it is almost useless in household ones.

    We will not consider here the so-called lightweight distributions, even if they are really lightweight, but do not set themselves IoT tasks, but are limited to ordinary use in ordinary workstations.

    Also, we will not look towards Windows 10 for IoT Core. Although this project is capable of performing tasks typical for IoT, it has nothing to do with open source.

    So, let's begin.

    OS based on Linux

    Brillo is a Google development, which is a lightweight Android and has gained some popularity over the year of its existence. For example, it is used on Intel Edison and Dragonboard 410c. However, this OS is tied to the Weave protocol, which is a Google development and is not used anywhere else. The system is capable of running on equipment with 32MiB RAM and 128MiB flash.

    Huawei LiteOS - Huawei's LiteOS is based on Linux, but there isn't much left of Linux there. They started talking about the system about a year ago and it is claimed that the core can be as small as 10KB. LiteOS can be used on a wide range of hardware from MCU devices to Android-compatible ones. Main features: trivial setup, automatic detection anything and everything, wide support for a variety of networks (LTE and mesh networks including), fast loading.

    OpenWrt /LEDE/Linino/DD-Wrt is a well-known project, most in demand on routers and other MIPS network equipment. Given the initial network focus, he could not ignore IoT. These forks are not fundamentally different from each other and were born due to NIH syndrome or organizational squabbles.

    Ostro Linux is based on the Yocto Project (to be discussed separately) and became famous after Intel chose it for the Intel Joule, based on the Atom SoC T5700. Ostro Linux is compatible with IoTivity, supports many wireless technologies, and also provides a framework for working with a variety of sensors. Particular attention is paid to security, including cryptography.

    Raspbian - Debian, tailored to run on the Raspberry Pi. And although there are other distributions for Raspberry that are more focused on the nuances of IoT, it is Raspbian that has become the de facto standard for DIY projects based on Raspberry Pi.

    Snappy Ubuntu Core --Ubuntu version Core with Snap packages. Canonical claims that this system is capable of running on "any Linux desktop, server, cloud or device." In principle, it is capable of running on Raspberry Pi, but generally requires a 600MHz CPU, 128MiB RAM, 4GiB flash. Quite widely used. For example: Erle-Copter drones, Dell Edge Gateways, Nextcloud Box, and LimeSDR.

    Tizen - developed with the support of Samsung. It was originally planned as an OS for smartphones, but something went wrong and now it can only be found on TVs and so-called. smart watch. The project is not going to die, but its future is not clear either. Able to start on "raspberry".

    uClinux is the only more or less sane and widespread Linux version, capable of running on microcontrollers. But so far only on a few: Cortex-M3, M4, and M7. Yes, and there you need to connect external RAM to work.

    Yocto Project is not a distribution, but a set of utilities, templates and methods for developing embedded distributions supported and developed by the Linux Foundation. Very successful project, which is the basis for most successful commercial distributions designed for IoT.

    Some famous non-Linux distributions

    Apache Mynewt - developed by Runtime for 32-bit microcontrollers with the support of the Apache Software Foundation. It stands out for its good support for wireless connections, wide possibilities for debugging and fine tuning energy consumption. Supposed to be available for Arduino soon.

    ARM Mbed - aimed at low-power, battery-powered boards based on Cortex-M microcontrollers. 8KiB of RAM is enough for operation. First appeared on BBC Micro:bit SBC. Initially it was a single-threaded semi-proprietary piece of a blob, but now it is an open project under the Apache 2.0 license with support for multi-threading and real-time.

    Contiki - cannot compete with Tiny OS or RIOT OS, but requires only 10KiB RAM and 30KiB flash to work, works great with wireless communication and is IPv6 friendly. The OS is accompanied by an impressive set of utilities for development and testing, including Cooja Network Simulator for debugging wireless networks. The main feature is low memory consumption.

    FreeRTOS is Linux's main competitor among embedded platforms. And although it experiences problems with drivers, user accounts and other pleasant things from the world of full-fledged OS, it is capable of running on 1KiB of memory and 5-10 KiBROM. Although for full network interaction with normal TCP/IP, 24KiB RAM and 60KiB flash are required.

    Fuchsia is another development from Google. Data is scarce, but the company claims that their OS can compete with FreeRTOS. Bring your own noodle buckets. They also don’t provide a rake for removing noodles from your ears. We are waiting for the marketers to shut up and the techies to speak up.

    Minoca - the code is open under the GPLv3 license. Assemblies prepared for x86, ARMv6 and ARMv7 architectures, including generated boot images For Raspberry boards Pi 2, Raspberry Pi, BeagleBone Black, Asus C201, PandaBoard and Galileo, as well as a QEMU based emulator. The system is modular - the kernel subsystems are separated from each other, and interaction with the hardware is abstracted. Device drivers are not tied to the kernel and are designed as universal executable files, independent of the kernel version. 5 MiB RAM is enough to run.

    NuttX is widely used among developers of quadcopters and other drones. BSD license. Works on x86, Cortex-A5, -A8 and Cortex-M MCUs. Positioned by the developers as “looks almost like Linux only with reduced capabilities.”

    RIOT OS - for 8 years now, this OS is known for its energy efficiency and the widest support for wireless networks. 1.5KiB RAM and 5KiB flash are enough to work, which is almost the same as Tiny OS. At the same time, the system offers multithreading, memory management, partial POSIX compatibility and other things that are more typical for Linux than for lightweight RTOS. By the way, you can develop for this OS from Linux or OS X.

    TinyOS - this OS is developed under a BSD license and requires the least amount of resources of all sane systems. The system is written in a dialect of C called nesC. Primary use: Low-end microcontrollers, although Cortex-M3 support is currently being worked on.

    Zephyr - is developed by the Linux Foundation and consumes 2-8KiB RAM. Works on x86, ARM, ARC, but focuses on microcontrollers with Bluetooth/BLE and 802.15.4 radios like 6LoWPAN. Zephyr is based on River's Rocket OS, which in turn is based on Viper, which is nothing more than a stripped-down version of VxWorks.

    Tags:

    • IoT
    • embedded
    Add tags

    To understand what it means for our organization to use open/closed source software, we need to understand how they differ from each other. This article points out the main differences, but remember that this is a very simplified explanation. Additional information can be obtained from Wikipedia or by reading concrete examples using both types of software.

    First of all, open source software means that we can change and develop our program as long as we have the knowledge and skills to do so. On the contrary, it is not possible to modify a closed source program yourself since the source code of the program/application is not available. While not all of us are programmers, we can still benefit from working with open source software.

    Such software is provided to users free of charge, not only programs, but also operating systems. It is created and developed by users themselves, who post their creations on the Internet. Most popular programs are updated regularly because so many people use them. An example is Mozilla Firefox or Thunderbird. If the program is not updated regularly, it may be that there are not enough necessary technical resources for this - the whole question is how many users the program has. The high frequency of updates is a definite guarantee of the safety of using the program. However, if after installing the update it turns out that the program does not work (for example, in new version operating system is not supported by Skype), there are two ways to solve the problem: try to find help on forums on the Internet or fix the problem yourself, which is relatively difficult.

    Closed source software is much more popular than open source software. First of all, due to ease of use, and also because we are simply accustomed to it - as a rule, we use Windows OS at school, at work and at home. In the case of programs and operating systems based on closed source code, we are dealing with a finished product that does not require any intervention on our part. They are much more convenient for the average user to work with. Users of closed source software often emphasize how easy it is to install and use, how convenient it is to have clear help for the program at hand, and the ability to contact technical support if problems arise. Such systems and products are released by companies, and only after several stages of testing. The user simply buys a whole software package, ready to install on your computer. Such software is paid: we purchase a license, and often program updates.

    Some software developers support community organizations and offer programs for free or at a discount through their respective non-profit organizations, such as TechSoup's extensive partner network, whose members are located in different countries. In Russia, the program is implemented by the Greenhouse of Social Technologies (Spiro LLC). By contacting the infoDonor program, you can find out whether your organization can participate in the program. We should also remember that when we choose an operating system, we are also choosing the way we work in our organization. For example, if we choose Linux, we will not be able to use Adobe solutions, and if we choose Windows, we will have to purchase licenses based on the number of computers. Each case has its pros and cons. We need to carefully consider what exactly our organization needs, what the criteria are effective use equipment, and make a decision after a thorough analysis.

    Of course, open or closed source software isn't just about Microsoft, Mac, or Linux. The issue of licensing comes up in connection with any type of software used in an organization. The main rule is to carefully read all licenses and service agreements. There are many examples where organizations have encountered serious problems with software that was rendered virtually useless due to licensing conditions, or where even the smallest changes to a site were very expensive.

    All modern digital devices run on a specific operating system. For example, it could be Windows or Linux, and for smartphones and tablets – Android and iOS.

    Operating systems come in open and closed types. The term “open operating system” means an open source system. This code is open for editing, and any user can change it (naturally, within the framework of the license and the law). And a closed operating system does not allow you to “dig” into its source code.

    Open OSs are usually free, develop very quickly, and can be customized in detail for any device. And all because any user who understands this at least a little can correct errors in the system, write drivers, etc. Errors in closed operating systems are corrected only by service packs produced by the official developers of the OS.

    Examples of open and closed operating systems

    An example of an open operating system for smartphones and tablets is Google Android. This OS allows the user to do whatever he wants - rewrite some drivers, add support for new functions, etc. And here is the operating room Windows system Phone is considered closed and does not give users any right to intervene. They can only periodically install service packs, buy programs or use free ones.

    There are also conditionally open operating systems – iOS and Symbian. You can’t change anything in such OSs either, but you can write programs for them using special software, which is provided by the developers. The most popular operating systems for smartphones are Google Android and iOS. For an ordinary user who is not creating new programs, the difference between these operating systems will only be in the interface.

    When it comes to computer operating systems, Windows is considered a closed operating system, while Linux is considered an open operating system. Naturally, you can only customize Linux. There is another operating system - Mac OS, which is very similar in architecture to Linux, but it is considered a closed OS.

    As for the choice of OS to use, each user decides for himself. For example, in closed operating systems the probability of catching a virus is much higher, and in this case you will have to wait until the developers fix the hole in the system with the next service pack. In addition, Windows and Mac OS are paid operating systems, while Linux is freely available to everyone.