Software Technology (a): Introduction


Computer software development process

Logic design software

  1. Problems understood
    clearly problems input and output requirements
  2. Algorithm design
    including software architecture design, the modular decomposition, selecting a particular algorithm strategy, described in a suitable manner and stepwise refinement algorithm steps
  3. Data structure design
    on the one hand you want to select or design can effectively represent data structures stored data objects and application issues involved, but also select the data structures or algorithms designed to support policy implementation

Software Programming

  1. Algorithm analysis
    found the perfect place to improve returns to the second step, re-select or design algorithms and data structures
  2. Programming
    design of specific data storage access solutions, data structures, implementation details, the implementation details of the design process based on some operating systems, debug and run programs on your computer.
  3. Program realization
    in some computer programming language, define data structures, data storage, based on an operating system to write code that implements the algorithm, debug and compile the code and run the program on your computer, and optimize programming.

Double loop

Double loop


Software system core logic

  • Algorithms + data structures = core logic
  • There are two data structures use in the calculation
  1. It used to store data to be processed, such as maze map
  2. The algorithm used to implement policies, such as the example to explore the maze increment array direction, backtracking stack, or an array of special signs to avoid duplicate mark to go)
  • Algorithm design is to study various methods of operation of various types of data structures to solve computational problems

Software Programming

  • Program in computer operating mode
    1
  • Programming issues to consider
  1. Procedural framework

    How to develop software on the operating system?
    What operating system with function
    program to the operating system according to patience?
    What kind of program architecture

  2. Data Management
    Database


Software operating platform

  • 操作系统OS
    操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。
  • 操作系统主要功能
    The main function of the operating system

处理机管理

  • 按照一定的算法把处理机分配给进程(线程),并对其进行有效的管理和控制。
    Processor Management
  • 进程控制
    进程控制的主要功能是为作业创建进程、撤消已结束的进程,以及控制进程在运行过程中的状态转换。
  • 进程调度
    操作系统内的进程运行需经调度才能执行完成,即把CPU分配给哪个进程使之运行
    Process Scheduling
  • 进程同步
    进程同步的主要任务是为多个进程的运行进行协调。
    进程同步的两种协调方式
    进程互斥方式,这是指诸进程(线程)在对临界资源进行访问时,应采用互斥方式;
    进程同步方式,指进程相互合作去完成共同的任务时,诸进程之间的协调
  • 进程通信
    进程是指进程之间的信息交换。
    进程通信方式
    机器内
    机器间

存储器管理

  • 为多道程序的运行提供良好的环境,方便用户使用存储器,提高存储器的利用率以及能从逻辑上扩充内存。

Memory Management


设备管理

  • 完成用户进程提出的I/O请求;
  • 为用户进程分配其所需的I/O设备;
  • 提高CPU和I/O设备的利用率;
  • 提高I/O速度;
  • 方便用户使用I/O设备。

文件管理

  • 是对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性
    Document Management

用户接口

The user interface


软件程序编译

  • 程序需要编译成计算机能理解的代码才能在操作系统上运行
  • 软件是运行在操作系统之上的,因此与操作系统息息相关。同一个软件逻辑和程序在不同的操作系统上的实现可能是不同的,其可运行二进制码也是不同的
  1. 依赖操作系统的程序编译方式
    Rely on the operating system compile way
  2. Do not rely on the operating system compiled by: cross-platform development
    JAVA language is cross-platform language, JAVA virtual machine JVM is not cross-platform
    Do not rely on the operating system compile way
  • And "compile" related to three languages, three types of procedures
    Here Insert Picture Description

Computer Software Data Management

  • After the data structure is determined, one of the main software: structured data management operations
  • CRUD, CRUD
  • Manual management
    Manual management
  • File system
    File system
  • Database Systems
    Database Management System referred DBMS
    database system
  • SQL language
    SQL language
  • Distributed Database DDBS
    (Distributed the DBS)
    technology is crystalline product DB and network technology, communication technology.
    Its characteristics are:
    processing data dispersed on each node, each node of the data by the local DBMS management, among the nodes can
    share data
    full use of advantage of resources each node, reduce the network load
Published 40 original articles · won praise 12 · views 5702

Guess you like

Origin blog.csdn.net/weixin_43488958/article/details/104635012