Electronic device and electronic device operation method
By adjusting the motor speed based on the time when applications are executed on the screen, the problem of frame drops when the screen area changes is solved, achieving a seamless display effect.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SAMSUNG ELECTRONICS CO LTD
- Filing Date
- 2021-11-23
- Publication Date
- 2026-07-10
AI Technical Summary
When the display area of a monitor is expanded or reduced at a constant speed using a motor, frame drops may occur, resulting in a failure to reflect corresponding changes in the screen or an unsmooth display.
By recognizing the time required to display the application's execution screen on the monitor, the speed of the motor is adjusted based on that time to seamlessly display the application's execution screen while the monitor's screen display area expands or shrinks.
It enables seamless display of the application's execution screen as the display screen area changes, reducing frame drops.
Smart Images

Figure CN116547630B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of this disclosure relate to a technique for an electronic device including a display, wherein the display is capable of expanding or shrinking the area used for displaying a screen by using a motor. Background Technology
[0002] Various types of electronic devices have been developed and distributed. For example, mobile devices with various functions, such as smartphones, tablet PCs, and wearable devices, as well as existing desktop PCs, have become widely available. In addition, with the development of technology, electronic devices including flexible displays that can expand or reduce the screen display area, as well as electronic devices with fixed-type displays, have been developed and distributed. Summary of the Invention
[0003] Technical issues
[0004] When the display area of a monitor is expanded or reduced at a constant speed using a motor, frames may be dropped depending on the performance of each application, instead of reflecting the execution screen of the application corresponding to the display area of the monitor which has changed in shape or size, or the execution screen corresponding to the display area may not be displayed smoothly.
[0005] Various embodiments of this disclosure provide an electronic device and a method for operating the electronic device, wherein the electronic device is able to control the speed of the motor based on the performance of an application displayed on the display when the screen display area of the display is expanded or reduced by using a motor.
[0006] Technical solution
[0007] According to embodiments of this disclosure, an electronic device may include: a housing; a motor; a display including a region movable out of or into the housing using the motor; a memory; and a processor operatively connected to the motor, the display, and the memory. The memory includes instructions, wherein, when executed, the instructions cause the processor to: execute an application; in response to a specific event, move the region of the display out of the housing using the motor at a specific reference speed; identify a time required to display an execution screen of the application on the display while moving the region; adjust the speed of the motor based on the required time; and display an execution screen of the application on the display corresponding to a state of the display while moving the region at the adjusted motor speed.
[0008] Furthermore, according to embodiments of this disclosure, a method for operating an electronic device including a display, wherein the display includes a region capable of being moved out of or into a housing using a motor, the method comprising: executing an application; in response to a specific event, moving the region of the display out of the housing using the motor at a specific reference speed; identifying a time required to display an execution screen of the application on the display while moving the region; adjusting the speed of the motor based on the required time; and displaying an execution screen of the application on the display corresponding to a state of the display while moving the region at the adjusted speed of the motor.
[0009] Beneficial effects
[0010] According to embodiments of this disclosure, the speed of a motor used to expand or shrink the screen display area of a display can be controlled based on the performance of an application displayed on the display.
[0011] According to embodiments of this disclosure, the speed of a motor used to expand or shrink the screen display area of a display can be controlled, thereby seamlessly displaying the execution screen of an application on the display while the screen display area is changing.
[0012] According to embodiments of this disclosure, the speed of the motor used to expand or shrink the screen display area of the display can be controlled, thereby reducing frame drops caused when the screen display area is changing.
[0013] In addition, various effects can be provided directly or indirectly through this disclosure. Attached Figure Description
[0014] Figure 1 This is a block diagram illustrating an electronic device in a network environment according to various embodiments.
[0015] Figure 2 This is a block diagram illustrating an electronic device according to an embodiment;
[0016] Figure 3 This is a block diagram of an electronic device according to an embodiment;
[0017] Figure 4 This is a system block diagram of an electronic device according to an embodiment;
[0018] Figure 5 This is a view illustrating the processing of the execution screen of a display application according to an embodiment;
[0019] Figure 6 This is a view illustrating the drawing operations of an application according to an embodiment;
[0020] Figure 7This is a view illustrating the operation of an electronic device according to an embodiment;
[0021] Figure 8a and Figure 8b This is a view illustrating the operation of an electronic device according to an embodiment;
[0022] Figure 9 This is a view illustrating the operation of an electronic device according to an embodiment;
[0023] Figure 10a and Figure 10b This is a view illustrating the operation of an electronic device according to an embodiment;
[0024] Figure 11 This is a flowchart illustrating a method of operating an electronic device according to an embodiment;
[0025] Figure 12 This is a flowchart illustrating a method of operating an electronic device according to an embodiment;
[0026] Figure 13a and Figure 13b This is a view showing the front and rear surfaces of an electronic device in a slid-in state according to various embodiments of the present disclosure;
[0027] Figure 14a and Figure 14b This is a view showing the front and rear surfaces of an electronic device in a slide-out state according to various embodiments of the present disclosure; and
[0028] Figure 15 This is an exploded perspective view of an electronic device according to various embodiments of the present disclosure.
[0029] The same or similar components will be labeled with the same or similar reference numerals in the accompanying drawings. Detailed Implementation
[0030] Figure 1 This is a block diagram illustrating an electronic device 101 in a network environment 100 according to various embodiments. (Refer to...) Figure 1In network environment 100, electronic device 101 can communicate with electronic device 102 via a first network 198 (e.g., a short-range wireless communication network), or with at least one of electronic device 104 or server 108 via a second network 199 (e.g., a long-range wireless communication network). According to an embodiment, electronic device 101 can communicate with electronic device 104 via server 108. According to an embodiment, electronic device 101 may include a processor 120, memory 130, input module 150, sound output module 155, display module 160, audio module 170, sensor module 176, interface 177, connection terminal 178, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, user identification module (SIM) 196, or antenna module 197. In some embodiments, at least one of the above components (e.g., connection terminal 178) may be omitted from electronic device 101, or one or more other components may be added to electronic device 101. In some embodiments, some of the components described above (e.g., sensor module 176, camera module 180, or antenna module 197) may be implemented as a single integrated component (e.g., display module 160).
[0031] Processor 120 may run software (e.g., program 140) to control at least one other component (e.g., hardware or software component) of electronic device 101 connected to processor 120, and may perform various data processing or calculations. According to one embodiment, as at least part of the data processing or calculation, processor 120 may store commands or data received from another component (e.g., sensor module 176 or communication module 190) in volatile memory 132, process the commands or data stored in volatile memory 132, and store the resulting data in non-volatile memory 134. According to embodiments, processor 120 may include a main processor 121 (e.g., central processing unit (CPU) or application processor (AP)) or an auxiliary processor 123 (e.g., graphics processing unit (GPU), neural processing unit (NPU), image signal processor (ISP), sensor central processor, or communication processor (CP)) that is operationally independent of or combined with the main processor 121. For example, when electronic device 101 includes a main processor 121 and an auxiliary processor 123, the auxiliary processor 123 may be adapted to consume less power than the main processor 121, or to be dedicated to a specific function. The auxiliary processor 123 may be implemented separately from the main processor 121, or may be implemented as part of the main processor 121.
[0032] When the main processor 121 is inactive (e.g., in sleep mode), the auxiliary processor 123 (rather than the main processor 121) can control at least some of the functions or states associated with at least one component of the electronic device 101 (e.g., display module 160, sensor module 176, or communication module 190), or when the main processor 121 is active (e.g., running an application), the auxiliary processor 123 can work with the main processor 121 to control at least some of the functions or states associated with at least one component of the electronic device 101 (e.g., display module 160, sensor module 176, or communication module 190). According to embodiments, the auxiliary processor 123 (e.g., an image signal processor or a communication processor) may be implemented as part of another component (e.g., camera module 180 or communication module 190) functionally associated with the auxiliary processor 123. According to embodiments, the auxiliary processor 123 (e.g., a neural processing unit) may include hardware architecture dedicated to artificial intelligence model processing. Artificial intelligence models can be generated through machine learning. For example, such learning can be performed via electronic device 101 where artificial intelligence is performed or via a separate server (e.g., server 108). The learning algorithm may include, but is not limited to, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning. The artificial intelligence model may include multiple layers of artificial neural networks. The artificial neural network may be a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), or a deep Q-network, or a combination of two or more thereof, but is not limited thereto. Additionally or optionally, the artificial intelligence model may include software structures in addition to hardware structures.
[0033] Memory 130 may store various data used by at least one component of electronic device 101 (e.g., processor 120 or sensor module 176). The various data may include, for example, software (e.g., program 140) and input or output data for commands associated with it. Memory 130 may include volatile memory 132 or non-volatile memory 134.
[0034] The program 140 may be stored as software in the memory 130, and the program 140 may include, for example, an operating system (OS) 142, middleware 144, or application 146.
[0035] The input module 150 can receive commands or data from outside the electronic device 101 (e.g., a user) that will be used by other components of the electronic device 101 (e.g., processor 120). The input module 150 may include, for example, a microphone, mouse, keyboard, keys (e.g., buttons), or digital pen (e.g., stylus).
[0036] The sound output module 155 can output sound signals to the outside of the electronic device 101. The sound output module 155 may include, for example, a speaker or a receiver. The speaker can be used for general purposes such as playing multimedia or playing records. The receiver can be used to receive incoming calls. According to an embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.
[0037] Display module 160 can visually provide information to the outside of electronic device 101 (e.g., to a user). Display module 160 may include, for example, a display, a holographic device, or a projector, and control circuitry for controlling a respective one of the display, holographic device, and projector. According to an embodiment, display module 160 may include a touch sensor adapted to detect touch or a pressure sensor adapted to measure the intensity of the force caused by touch.
[0038] The audio module 170 can convert sound into electrical signals and vice versa. According to an embodiment, the audio module 170 can obtain sound via the input module 150, or output sound via the sound output module 155 or headphones of an external electronic device (e.g., electronic device 102) that is directly (e.g., wired) or wirelessly connected to the electronic device 101.
[0039] Sensor module 176 can detect the operating state of electronic device 101 (e.g., power or temperature) or the environmental state outside electronic device 101 (e.g., user state), and then output an electrical signal or data value corresponding to the detected state. According to embodiments, sensor module 176 may include, for example, a gesture sensor, gyroscope sensor, atmospheric pressure sensor, magnetic sensor, accelerometer, grip sensor, proximity sensor, color sensor, infrared (IR) sensor, biometric sensor, temperature sensor, humidity sensor, or illuminance sensor.
[0040] Interface 177 may support one or more specific protocols used to enable electronic device 101 to connect directly (e.g., wired) or wirelessly to external electronic devices (e.g., electronic device 102). According to embodiments, interface 177 may include, for example, a High Definition Multimedia Interface (HDMI), a Universal Serial Bus (USB) interface, a Secure Digital Card (SD) interface, or an audio interface.
[0041] Connection end 178 may include a connector, through which electronic device 101 can be physically connected to an external electronic device (e.g., electronic device 102). According to embodiments, connection end 178 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).
[0042] The tactile module 179 can convert electrical signals into mechanical stimuli (e.g., vibration or motion) or electrical stimuli that can be recognized by a user through his touch or kinesthesia. According to embodiments, the tactile module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulator.
[0043] Camera module 180 can capture still or moving images. According to an embodiment, camera module 180 may include one or more lenses, an image sensor, an image signal processor, or a flash.
[0044] The power management module 188 manages the power supply to the electronic device 101. According to an embodiment, the power management module 188 may be implemented as at least part of, for example, a power management integrated circuit (PMIC).
[0045] Battery 189 can power at least one component of electronic device 101. According to an embodiment, battery 189 may include, for example, a non-rechargeable primary battery, a rechargeable rechargeable battery, or a fuel cell.
[0046] Communication module 190 can support the establishment of a direct (e.g., wired) or wireless communication channel between electronic device 101 and external electronic devices (e.g., electronic device 102, electronic device 104, or server 108), and perform communication via the established communication channel. Communication module 190 may include one or more communication processors capable of operating independently of processor 120 (e.g., application processor (AP)) and support direct (e.g., wired) or wireless communication. According to embodiments, communication module 190 may include wireless communication module 192 (e.g., cellular communication module, short-range wireless communication module, or Global Navigation Satellite System (GNSS) communication module) or wired communication module 194 (e.g., local area network (LAN) communication module or power line communication (PLC) module). One of these communication modules can communicate with an external electronic device via a first network 198 (e.g., a short-range communication network such as Bluetooth, Wi-Fi Direct, or Infrared Data Association (IrDA)) or a second network 199 (e.g., a long-range communication network such as a traditional cellular network, 5G network, next-generation communication network, the Internet, or a computer network (e.g., a LAN or a wide area network (WAN))). These various types of communication modules can be implemented as a single component (e.g., a single chip) or as multiple components separate from each other (e.g., multiple chips). The wireless communication module 192 can identify and verify the electronic device 101 in the communication network (such as the first network 198 or the second network 199) using user information (e.g., the International Mobile Subscriber Identity (IMSI)) stored in the user identification module 196.
[0047] Wireless communication module 192 can support 5G networks following 4G networks and next-generation communication technologies (such as new radio (NR) access technologies). NR access technologies can support enhanced mobile broadband (eMBB), massive machine-type communication (mMTC), or ultra-reliable low-latency communication (URLLC). Wireless communication module 192 can support high-frequency bands (e.g., millimeter-wave bands) to achieve, for example, high data transmission rates. Wireless communication module 192 can support various technologies used to ensure performance in high-frequency bands, such as, for example, beamforming, massive MIMO, full-dimensional MIMO (FD-MIMO), array antennas, analog beamforming, or massive antennas. Wireless communication module 192 can support various requirements specified in electronic device 101, external electronic devices (e.g., electronic device 104), or network systems (e.g., second network 199). According to an embodiment, the wireless communication module 192 may support peak data rates (e.g., 20 Gbps or greater) for implementing eMBB, lost coverage (e.g., 164 dB or less) for implementing mMTC, or U-plane latency (e.g., 0.5 ms or less for each of the downlink (DL) and uplink (UL), or 1 ms or less round trip) for implementing URLLC.
[0048] Antenna module 197 can transmit or receive signals or power to or from the exterior of electronic device 101 (e.g., external electronic device). According to an embodiment, antenna module 197 may include an antenna comprising a radiating element formed of a conductive material or conductive pattern formed in or on a substrate (e.g., a printed circuit board (PCB)). According to an embodiment, antenna module 197 may include multiple antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication scheme used in a communication network (such as a first network 198 or a second network 199) can be selected from the multiple antennas by, for example, communication module 190 (e.g., wireless communication module 192). Signals or power can then be transmitted or received between communication module 190 and the external electronic device via the selected at least one antenna. According to an embodiment, additional components besides the radiating element (e.g., a radio frequency integrated circuit (RFIC)) may be additionally incorporated into antenna module 197.
[0049] According to various embodiments, antenna module 197 may form a millimeter-wave antenna module. According to embodiments, the millimeter-wave antenna module may include a printed circuit board, a radio frequency integrated circuit (RFIC), and multiple antennas (e.g., an array antenna), wherein the RFIC is disposed on or adjacent to a first surface (e.g., a bottom surface) of the printed circuit board and is capable of supporting a specified high-frequency band (e.g., a millimeter-wave band), and the multiple antennas are disposed on or adjacent to a second surface (e.g., a top surface or a side surface) of the printed circuit board and are capable of transmitting or receiving signals in the specified high-frequency band.
[0050] At least some of the aforementioned components can be interconnected and communicate signals (e.g., commands or data) between them via an inter-peripheral communication scheme (e.g., bus, general purpose input / output (GPIO), serial peripheral interface (SPI), or mobile industrial processor interface (MIPI)).
[0051] According to an embodiment, commands or data can be sent or received between electronic device 101 and external electronic device 104 via server 108 connected to a second network 199. Each of electronic device 102 or electronic device 104 can be a device of the same type as electronic device 101, or a device of a different type. According to an embodiment, all or some operations that would be performed on electronic device 101 can be performed on one or more of external electronic devices 102, external electronic devices 104, or server 108. For example, if electronic device 101 is required to automatically perform a function or service, or is required to perform a function or service in response to a request from a user or another device, electronic device 101 may request the one or more external electronic devices to perform at least a portion of the function or service, instead of running the function or service, or electronic device 101 may request the one or more external electronic devices to perform at least a portion of the function or service in addition to running the function or service. Upon receiving the request, the one or more external electronic devices may perform at least a portion of the requested function or service, or perform additional functions or services related to the request, and transmit the result of the execution to electronic device 101. Electronic device 101 may provide the result as at least a partial response to the request, with or without further processing of the result. For this purpose, technologies such as cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing may be used. Electronic device 101 may use, for example, distributed computing or mobile edge computing to provide ultra-low latency services. In another embodiment, external electronic device 104 may include an Internet of Things (IoT) device. Server 108 may be an intelligent server using machine learning and / or neural networks. According to embodiments, external electronic device 104 or server 108 may be included in a second network 199. Electronic device 101 may be applied to intelligent services based on 5G communication technology or IoT-related technologies (e.g., smart homes, smart cities, smart cars, or healthcare).
[0052] Figure 2 This is a block diagram of an electronic device according to an embodiment.
[0053] According to an embodiment, electronic device 200 (e.g., Figure 1 The electronic device 101 may include a motor 210, a display 220 (e.g., Figure 1 The display module 160), and the memory 230 (e.g., Figure 1 The memory 130) and / or processor 240 (e.g., Figure 1 The processor 120).
[0054] According to an embodiment, the motor 210 can move a portion of the display 220 out of or into the housing of the electronic device 200. For example, the motor 210 can change the size of an area (e.g., the screen display area) shown outside the display 220 (e.g., a sliding display 220 or a rollable display 220).
[0055] According to an embodiment, the display 220 may include a flexible display 220 (e.g., a sliding display 220 or a rollable display 220). For example, the display 220 may include a region capable of being moved out of or into the housing of the electronic device 200. For example, a portion of the display 220 may be inserted into the housing to be covered by the housing. For example, as a portion of the display 220 moves out of or into the housing, the size or shape of the screen display area of the display 220 may be changed. For example, when a portion of the display 220 moves out of the housing, the screen display area may be expanded. When a portion of the display 220 moves into the housing, the screen display area may be shrunk. According to an embodiment, the speed at which the portion of the display 220 is moved out of or into the housing may vary according to the speed of the motor 210.
[0056] According to an embodiment, memory 230 may store instructions for controlling the operation of electronic device 200 when executed by processor 240. According to an embodiment, memory 230 may include at least one application (e.g., Figure 1 Application 146).
[0057] According to an embodiment, processor 240 can control the overall operation of electronic device 200. According to an embodiment, processor 240 may include a main processor (not shown). Figure 1 The main processor 121) and the auxiliary processor (not shown, GPU; for example, Figure 1 The auxiliary processor 223), wherein the main processor controls the main operation of the electronic device 200, and the auxiliary processor performs graphics processing operations.
[0058] According to an embodiment, processor 240 can execute applications (e.g., Figure 1 The application 146) can be used to display the application's execution screen on the display 220.
[0059] According to an embodiment, in response to a specific event, the processor 240 can move a portion of the display 220 out of the housing at a specific reference speed using the motor 210, or it can move a portion of the display 220 into the housing at a specific reference speed. For example, the processor 240 can use the motor 210 to expand or shrink the area viewed from outside the display 220. According to an embodiment, the specific event may include user input for changing the shape (e.g., shape factor) of the display 220 of the electronic device 200 or the state of the electronic device 200. According to an embodiment, the processor 240 may use a sensor (not shown) to sense the changed shape of the display 220, or it may sense the drive speed of the motor 210 used to move a portion of the display 220 out of or into the housing.
[0060] According to an embodiment, the processor 240 may identify the time required to display an application's execution screen on the display 220 during movement of the display 220 (e.g., the screen display area of the display 220). According to an embodiment, the time required to display the application's execution screen may include at least one of the following: time required to determine the size of a view included in the application's execution screen, time required to determine the layout of the view, and time required to draw the execution screen to a frame buffer for the application based on the determined view and the determined layout. For example, the view may represent objects used to form the application's execution screen.
[0061] According to an embodiment, the processor 240 may store information in the memory 230 about the time required to execute the screen of the display application.
[0062] According to an embodiment, processor 240 can identify the time required to display the execution screen for each activity of the application, and can store information about the time required to display the execution screen for each activity in memory 230. For example, an activity can be a unit of execution screens included in the application. For example, the application can include multiple execution screens (e.g., activities). According to an embodiment, the time required to display the execution screen for each activity can include: the time required to first draw the execution screen corresponding to the activity, the time required to change at least a portion of the execution screen corresponding to the most recent activity, and an average of the cumulative time required to change at least a portion of the execution screen corresponding to the activity.
[0063] According to an embodiment, processor 240 may adjust the size of the application-specific frame buffer based on the size of the area viewed outside display 220. According to an embodiment, the frame buffer may be included in memory 230 or may be formed as a separate storage space. For example, the frame buffer may be storage space for storing the execution screen of the application. According to an embodiment, changes in the shape of the display may change the time required to generate or store the execution screen of the application and / or the size of the frame buffer. For example, the time required to display the execution screen of the application may vary depending on the configuration of the execution screen (e.g., complexity), transparency, and visual effects applied. For example, as the area viewed outside display 220 (e.g., the screen display area of display 220) expands, the size of the application-specific frame buffer may increase. As the area viewed outside display 220 shrinks, the size of the application-specific frame buffer may decrease.
[0064] According to one embodiment, the processor 240 may adjust the speed of the motor 210 based on the time required to display the execution screen of the application. According to another embodiment, the processor 240 may adjust the speed of the motor 210 based on the time required to display the execution screen corresponding to the currently executing activity included in the application.
[0065] According to an embodiment, the processor 240 can adjust the speed of the motor 210 within a certain maximum and a certain minimum motor speed range. For example, when the motor 210 accelerates excessively, although the application's execution screen may be displayed for a shorter period of time, the electronic device 200 may be damaged, or it may unintentionally cause physical impact to the user. Conversely, when the motor 210 decelerates excessively, although the application's execution screen may be displayed for a longer period of time, the time required to change the shape of the display 220 will also be prolonged, making it inconvenient for the user. According to an embodiment, the processor 240 can adjust the speed of the motor 210 within a specific range.
[0066] For example, processor 240 can adjust the drive speed of motor 210 based on application performance (e.g., time required for rendering), thereby adjusting the number of execution screens (frames) to be rendered while expanding or shrinking the area viewed externally to display 220 (e.g., screen display area). For example, processor 240 can adjust the drive speed of motor 210 based on application performance (e.g., time required for rendering), thereby controlling the speed at which the size of the screen display area of display 220 is changed to correspond to the time required to render the execution screens. For example, assuming the application performance (e.g., time required for rendering) is 48 milliseconds, and the total time required to change the shrunken area viewed externally to display 220 (e.g., screen display area) to the expanded area viewed externally to display 220 is 1000 milliseconds, then processor 240 can render 20 frames (1000 milliseconds / 48 milliseconds) of the application's execution screens during the drive time (e.g., during the time used to move the display). For example, the driving time of motor 210 may refer to the time required for the area viewed outside the display 220 (e.g., the screen display area) to change from a maximum zoomed-out state to a maximum zoomed-out state (or from a maximum zoomed-out state to a maximum zoomed-out state) according to the driving speed of motor 210. For example, when the driving speed of motor 210 is adjusted to 3000 milliseconds, processor 240 can draw 62 frames (3000 milliseconds / 48 milliseconds) of the application's execution screen within the driving time of motor 210 (e.g., the time for moving display 220). For example, when processor 240 increases the driving time of motor 210 (e.g., decreases the speed of motor 210), the speed at which the size of the screen display area of the display is changed decreases, and processor 240 can draw the execution screen according to the changed size of the screen display area (e.g., update the frames according to the changed size of the screen display area). For example, when the maximum drive time of a specific motor 210 in an application is 1500 milliseconds and the minimum drive time is 800 milliseconds, the processor 240 can adjust the drive time of motor 210 to 1500 milliseconds as the maximum drive time. For example, for the drive time of motor 210 (e.g., the movement time of the display), the processor 240 can draw 31 frames (1500 milliseconds / 48 milliseconds) of the application's execution screen. For example, when the drive speed of motor 210 is adjusted based on the application's drawing time, the number of execution screens (frames) to be drawn is increased while expanding or shrinking the area viewed outside the display 220 (e.g., the screen display area). For example, the processor 240 can draw many more execution screens corresponding to the shape of the display 220 (e.g., the size of the area viewed outside the display 220, or the screen display area of the display 220) while expanding or shrinking the area viewed outside the display 220.Therefore, the processor 240 can provide the user with an execution screen that is adapted to the changing display 220 while expanding or shrinking the area viewed outside the display 220, thereby reducing frame drops.
[0067] According to an embodiment, while executing multiple applications in a multi-window manner, the processor 240 adds up the time required to display the execution screens of the multiple applications, and can adjust the speed of the motor 210 based on the added time. For example, simultaneously displaying the execution screens of the multiple applications requires a time obtained by adding up the time used to display (draw) the execution screens of the applications. For example, the processor 240 may need a first time required to draw the execution screen of a first application and a second time required to draw the execution screen of a second application. For example, when simultaneously displaying the execution screens of the first and second applications in a multi-window manner, a time obtained by adding the first and second times is needed to draw the entire screen (e.g., the execution screens of the first and second applications). For example, in this case, the processor 240 can adjust the speed of the motor 210 based on the time obtained by adding the first and second times.
[0068] According to an embodiment, the processor 240 may control the speed of the motor 210 based on stored application performance information. According to an embodiment, the performance information may include information about the time required to draw an execution screen supported by the application. For example, information about drawing time may include maximum drawing time, minimum drawing time, and average drawing time. For example, the performance information may be included in the application as metadata by the application's developer (or distributor). For example, metadata including performance information may be included in the application when it is distributed.
[0069] According to an embodiment, the processor 240 may adjust the speed of the motor 210 based on at least one of the processor 240's performance, the communication status of the electronic device 200, and the available capacity of the electronic device 200's memory 230. For example, the time required to execute a screen display (e.g., drawing) application may vary depending on the current state of the electronic device 200 (e.g., the processor 240's speed, the processor 240's available resources, the electronic device 200's communication status, and / or the electronic device 200's memory capacity). According to an embodiment, the processor 240 may adjust the speed of the motor 210 based on the state of the electronic device 200.
[0070] According to an embodiment, the processor 240 can display the application's execution screen on the display 220 corresponding to the expanded state of the display 220 while simultaneously expanding the screen display area of the display 220 based on the adjusted speed of the motor 210. For example, when the screen display area of the display 220 expands or shrinks, the processor 240 can create new execution screens for the application to correspond to the changed shape of the display 220, and can display the new execution screens on the display 220. For example, while the display 220 expands, the processor 240 can display the application's execution screens on the display 220 in a form corresponding to the shape (e.g., size) of the expanded display 220. According to an embodiment, the processor 240 can adjust the speed of the motor 210 to correspond to the time required to display all execution screens of the application, thereby reducing frame drops caused while expanding the display 220, and seamlessly changing the application's execution screens to correspond to the expanded display 220.
[0071] Figure 3 This is a block diagram of an electronic device according to an embodiment. In the following text, references to the references will be briefly omitted. Figure 2 The description being repeated.
[0072] According to an embodiment, electronic device 300 (e.g., Figure 1 Electronic device 101 or Figure 2 The electronic device 200 may include an I / O bus 305, a display 310 (e.g., Figure 1 The display module 160 or Figure 2 The display 220 and sensor 320 (e.g., in the display 220) are shown in the display 220. Figure 1 The sensor module 176 and the motor 330 (e.g., Figure 2 Motor 210), touch panel 340 (e.g., Figure 1 Input module 150), frame buffer 350 (e.g., Figure 1 memory 130 or Figure 2 Memory 230), Memory 360 (e.g., Figure 1 memory 130 or Figure 2 The memory 230), and the input module 370 (e.g., Figure 1 Input module 150), GPU 380 (e.g., Figure 1 Auxiliary processor 123 or Figure 2 Processor 240) and / or processor 390 (e.g., Figure 2 main processor 121 or Figure 1 (Main processor 240).
[0073] According to an embodiment, I / O bus 305 may be an electrical path that allows communication between each of the components of electronic device 300 (e.g., display 310, sensor 320, motor 330, touch panel 340, frame buffer 350, memory 360, input module 370, GPU 380, and / or processor 390). For example, I / O bus 305 may send and receive data (signals) between the components of electronic device 300.
[0074] According to an embodiment, the display 310 may display an application (e.g., Figure 1 The application 310 may be used as an execution screen for the application 146. For example, the display 310 may output the execution screen stored in the frame buffer 350. For example, the display 310 may output the execution screen of the application based on the color values of the pixels stored in the frame buffer 350. According to an embodiment, the display 310 may include a flexible display 310 (e.g., a sliding display 310 or a rollable display 310). For example, the area viewed from the outside of the display 310 may extend out of the housing of the electronic device 300 or retract into the housing. For example, a portion of the display 310 may be inserted into the housing to be covered by the housing. For example, the size or shape of the screen display area of the display 310 may be changed as a portion of the display 310 moves out of or into the housing. For example, when a portion of the display 310 is moved out of the housing, the screen display area may be expanded. When a portion of the display 310 is moved into the housing, the screen display area may be shrunk. According to an embodiment, the speed at which the portion of the display 310 is moved out of or into the housing may vary according to the speed of the motor 330.
[0075] According to one embodiment, sensor 320 can sense whether the area viewed outside the display 310 of electronic device 300 is expanded or reduced. According to one embodiment, sensor 320 can sense the drive speed of motor 330.
[0076] According to an embodiment, the motor 330 can move a portion of the display 310 out of or into the housing of the electronic device 300.
[0077] According to an embodiment, the touch panel 340 can detect user touch input. For example, the touch panel 340 may include a touchscreen panel. For example, the touch panel 340 may form a touchscreen together with the display 310.
[0078] According to embodiments, frame buffer 350 may be included in memory 360 or memory 230, or it may be formed as a separate storage space. For example, frame buffer 350 may store the execution screen of the application being drawn. For example, frame buffer 350 may store the color values of pixels included in the execution screen. According to embodiments, frame buffer 350 may be included in GPU 380 or memory 360. For example, some storage space in memory 360 may be used as frame buffer 350.
[0079] According to an embodiment, the memory 360 may store instructions for controlling the operation of the electronic device 300 when executed by the processor 390. According to an embodiment, the memory 360 may include at least one application (e.g., Figure 1 Application 146).
[0080] According to an embodiment, the input module 370 (e.g., Figure 1 The input module 150 can receive commands or data from outside the electronic device 300 (e.g., a user) that will be used in components of the electronic device 300 (e.g., processor 390).
[0081] According to an embodiment, the graphics processing unit (GPU) 380 can control the drawing of an application's execution screen and store the execution screen in a frame buffer 350. According to an embodiment, the GPU 380 can identify the time required to draw or update the execution screen and provide information about the required time to the processor 390. According to an embodiment, the GPU 380 can draw the application's execution screen corresponding to the expanded or shrunk state of the display 310. For example, the GPU 380 can draw the execution screen corresponding to the state (shape) of the display 310 based on information received from the processor 390 regarding the expanded or shrunk state of the display 310, and store the execution screen in the frame buffer 350. According to an embodiment, the GPU 380 can control the display 310 to display the execution screen stored in the frame buffer 350. According to an embodiment, the GPU 380 may be included in the processor 390. For example, the processor 390 and the GPU 380 may be provided as a single chipset. According to an embodiment, the operation of the GPU 380 may be performed by the processor 390.
[0082] According to an embodiment, processor 390 can control the overall operation of electronic device 300. According to an embodiment, processor 390 can execute an application and display the application's execution screen on display 310. According to an embodiment, in response to a specific event, processor 390 can move a portion of display 310 out of the housing at a specific reference speed using motor 330 or motor 210, or it can move a portion of display 310 into the housing at a specific reference speed. For example, processor 390 can expand or shrink the screen display area of display 310 using motor 330.
[0083] According to an embodiment, the processor 390 can identify the time required to display the execution screen of an application on the display 310 while expanding the display 310 (e.g., the screen display area of the display 310), and can store information about the identified time in the memory 360. According to an embodiment, the processor 390 can adjust the size of the frame buffer for the application based on the shape of the display 310 being expanded or reduced.
[0084] According to an embodiment, the processor 390 may adjust the speed of the motor 330 based on the time required for the execution of the display application on the screen.
[0085] According to an embodiment, the processor 390 can expand the screen display area of the display 310 based on the adjusted speed of the motor 330 while displaying an application execution screen on the display 310 corresponding to the state of the display 310. For example, the processor 390 can control the GPU 380 to draw the application execution screen corresponding to the state of the display 310 and display the application execution screen on the display 310.
[0086] Figure 4 This is a system block diagram of an electronic device according to an embodiment.
[0087] According to an embodiment, electronic device 400 (e.g., Figure 1 Electronic device 101 in Figure 2 Electronic device 200 or Figure 3 The system of electronic device 300 may include application 401 (e.g., Figure 1 Applications 146), Window Manager (Display Manager) 403, Graphics Composer 405, Frame Buffer 407 (e.g., Figure 1 Memory 130, Figure 2 memory 230 or Figure 3 The frame buffer 350), display controller 409, power controller 411, power manager 413, touch screen panel (TSP) 415, key 417, mouse 419, motor sensor 421, motor manager 423, slide sensor 425, slide manager 427 and / or application performance motor control system 430.
[0088] According to one embodiment, the window manager 403 can control or manage the entire display (e.g., ...). Figure 1 Display module 160 Figure 2 220 or Figure 3 The screen displayed on the display 310 (e.g., the execution screen of application 410).
[0089] According to an embodiment, the graphics compositor 405 can generate an execution screen by compositing components (e.g., layers) that form the execution screen. For example, the graphics compositor 405 can draw the execution screen and store it in the frame buffer 407.
[0090] According to an embodiment, frame buffer 407 may store the drawn execution screen. For example, frame buffer 407 may store the color values of pixels included in the execution screen. According to an embodiment, the size of frame buffer 407 may be adjusted according to the shape of the display (e.g., the size or shape of the area viewed externally).
[0091] According to an embodiment, the display controller 409 can control the display. For example, the display controller 409 can output an execution screen on the display based on the color values of pixels stored in the frame buffer 407.
[0092] According to embodiments, the power controller 411 and / or power manager 413 can manage the power supply to the electronic device 400. For example, the power controller 411 and / or power manager 413 can supply power to components of the electronic device 400 and manage the usage status of the power used in the components. According to embodiments, the power controller 411 and / or power manager 413 can be integrated into a single component (e.g., a power management integrated circuit). Figure 1 It is implemented in the form of a power management module 188).
[0093] According to an embodiment, TSP 415 (e.g., Figure 3 The touch panel 340), keys 417, and / or mouse 419 can receive input for controlling the electronic device 400 from outside the electronic device 400 (e.g., a user). According to an embodiment, the TSP 415, keys 417, and / or mouse 419 can be configured as an input module (e.g., ...). Figure 1 Input module 150 or Figure 3 It is implemented in the form of input module 370.
[0094] According to an embodiment, the motor sensor 421 can sense a motor (e.g., Figure 2 Motor 210 or Figure 3The operation of the motor 330) is used to extend a portion of the display outside the housing or to reduce the size of the display by inserting the portion of the display into the housing. For example, the motor sensor 421 can sense the activation state of the motor and / or the drive speed of the motor.
[0095] According to an embodiment, the motor manager 423 can control the operation of the motor. For example, the motor manager 423 can activate or deactivate the motor, or adjust the motor's drive speed, under the control of the main controller 436.
[0096] According to an embodiment, the slide sensor 425 can sense whether the display is expanded or shrunk. For example, the slide sensor 425 can sense the sliding of the display. For example, the slide sensor 425 can detect that the shape (e.g., shape factor) of the display has changed.
[0097] According to an embodiment, the slider manager 427 can control the expansion or contraction of the area viewed outside the display. For example, the slider manager 427 can change the shape of the display (e.g., shape factor) in response to a specific event.
[0098] According to an embodiment, the application performance motor control system 430 can control the motor based on the performance of the application 410 (e.g., rendering time). According to an embodiment, the application performance motor control system 430 may include an application performance manager 431, a motor speed calculation manager 432, and a main controller (e.g., ...). Figure 1 Processor 120 Figure 2 Processor 240 or Figure 3 The processor 390) 436, system event receiver 433, context manager 434 and / or input manipulator 435.
[0099] According to an embodiment, the application performance manager 431 may identify and store the performance of application 410. For example, the application performance manager 431 may identify the time required to display the execution screen of application 410. According to an embodiment, the time required to display the execution screen of application 410 may include at least one of the following times: the time required to determine the size of a view included in the execution screen of application 410, the time required to determine the layout of the view, and the time required to draw the execution screen to the frame buffer 407 for application 410 based on the determined view and the determined layout. According to an embodiment, the application performance manager may identify the time required to display the execution screen for each activity of application 410 and may store information about the time required to display the execution screen for each activity. According to an embodiment, the time required to display the execution screen for each activity may include: the time required to first draw the execution screen corresponding to the activity, the time required to change at least a portion of the execution screen corresponding to the most recent activity, and the average of the cumulative time required to change at least a portion of the execution screen corresponding to the activity.
[0100] According to an embodiment, the motor speed manager 432 can calculate the motor drive speed based on the performance of the application 410 (e.g., the time required to draw the execution screen of the application 410). For example, the motor speed calculation manager 432 can determine the motor drive speed corresponding to the time required to display the execution screen of the application 410 on the display based on the performance of the application 410. According to an embodiment, the motor speed calculation manager 432 can determine the motor speed (motor drive time) within a range between a specified maximum motor speed (minimum motor drive time) and a minimum motor speed (maximum motor drive time).
[0101] According to an embodiment, the system event receiver 433 can detect events occurring in the electronic device 400. For example, events may include specific events used to expand or shrink the display.
[0102] According to an embodiment, the context manager 434 can determine the context of an event sensed by the system event receiver 433 or an input sensed by the input manipulator 435, and send information corresponding to the event or input to the main controller 436 based on the determined context.
[0103] According to an embodiment, the input manipulator 435 can detect input received via TSP 415, key 417 and / or mouse 419.
[0104] According to an embodiment, the main processor (e.g., Figure 1 The main processor 121 and Figure 2The main processor (240) can control the overall operation of the electronic device 400. For example, the main processor can control the operation of each of the components included in the system of the electronic device 400 and send data (information) between components. For example, the main processor can control the electronic device 400 to perform operations corresponding to events or received inputs based on information received from the context manager 434. For example, the main processor can send control signals for controlling the operation of each component included in the system of the electronic device 400 to each component. For example, the main processor can send performance information of the application 410 identified and stored by the application performance manager 431, as well as information about the motor drive speed calculated by the motor speed calculation manager 432, to the slider manager 427 and / or the motor manager 423. For example, the main processor can expand or shrink the area viewed outside the display through the slider manager 427 and / or the motor manager 423, and can control the speed at which the area viewed outside the display is expanded or shrunk.
[0105] According to embodiments, at least one component of the application performance motor control system 430 may be integrated. According to various embodiments, the operation of the application performance motor control system 430, the operation of the slide manager 427, and / or the operation of the motor manager 423 may be performed by a processor of an electronic device (e.g., a main controller).
[0106] Figure 5 This is a view illustrating the processing of an application execution screen according to an embodiment.
[0107] According to an embodiment, electronic devices (e.g., Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 Electronic devices 300 or Figure 4 The electronic device 400 can perform multiple processes to display the execution screen of the application on the display.
[0108] For example, multiple processes may include processing of scanning input 505, processing of the scanned input via firmware 510, processing by the operating system (OS) 515, processing at runtime, processing within a frame 525, applying drawing to the screen 530, rendering the screen 535, creating the final execution screen (frame) by compositing the rendered screen 540, outputting the execution screen to the display 550, or (in response to a specific event) changing (modifying) at least a portion of the execution screen 560.
[0109] According to an embodiment, the application screen rendering process 530 may be one of a plurality of processes that significantly influences the latency 570 until the final execution screen is displayed. For example, the time typically required for the application screen rendering process 530 may vary depending on the application, and even within the same application, it may vary depending on the activity (e.g., the screen provided in the application).
[0110] According to an embodiment, when a portion of the display is moved out of or into the housing, the electronic device can adjust the time required for screen processing 530 to be performed based on the application drawing screen to display and the changed screen display area of the display (e.g., ...). Figure 2 The speed of the motor 210 in the display. For example, when the speed of the motor is adjusted based on the time required for the application to draw the screen, the execution screen of the application can be smoothly displayed on the display to correspond to the shape or size of the screen display area of the display.
[0111] Figure 6 This is a view illustrating the drawing operations of an application according to an embodiment.
[0112] According to an embodiment, application 610 can draw an execution screen via view system 620. According to an embodiment, view system 620 can be a module that fully manages the views of application 610. According to an embodiment, the view can include objects that form the execution screen. According to an embodiment, view system 620 can include software modules that manage the views of the application. For example, view system 620 can include software systems that allow applications to form and manage execution screens, and can control input to a touchscreen panel (TSP), key input, and / or output to the execution screen. For example, view system 620 can send TSP events and / or key events sent from the frame of an electronic device to the view.
[0113] According to an embodiment, the view system 620 may include a measurement module 621, a layout module 623, and / or a drawing module 625. According to an embodiment, the measurement module 621 may determine the size of each of the views included in the execution screen. According to an embodiment, the layout module 623 may determine the position of each view in the execution screen based on the dimensions of the views determined by the measurement module 621. According to an embodiment, the drawing module 625 may draw the execution screen into a frame buffer associated with the application 610 based on the dimensions of the views determined by the measurement module 621 and the positions of the views determined by the layout module 623.
[0114] According to an embodiment, the application performance manager 630 may store information about the time required when the execution screen of the application 610 is drawn through the view system 620. For example, the application performance manager 630 may store at least one of the following: the time required to initially generate the execution screen, the time required to update the execution screen (e.g., to change a portion of the execution screen in response to an event), or the average of the cumulative time required to update the execution screen.
[0115] According to various embodiments, the operation of the view system 620 and the application performance manager 630 may be controlled by the processor of an electronic device (e.g., ...). Figure 1 Processor 120 Figure 2 Processor 240, Figure 3 GPU 380, Figure 3 Processor 390 and / or Figure 4 The main controller 436) executes.
[0116] Figure 7 This is a view illustrating the operation of an electronic device according to an embodiment.
[0117] According to an embodiment, electronic device 700 (e.g., Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 Electronic devices 300 or Figure 4 Electronic device 400) and display 710 (e.g., Figure 1 Display module 160 Figure 2 220 or Figure 3 The display 310 includes the use of a motor (e.g., Figure 2 Motor 210 or Figure 3 The motor 330 moves out of or into the housing area. For example, the display 710 may include a sliding display 710 or a rollable display 710. For example, a portion of the display 710 may be inserted into the housing to be covered by the housing, or may be viewed from outside the housing. For example, the shape or size of the display screen area (screen display area) of the display 710 may be changed by the motor. For example, the screen display area of the display 710 may be expanded or shrunk by area 715.
[0118] According to an embodiment, the electronic device 700 can display an application execution screen corresponding to the shape of the display 710. For example, when the screen display area of the display 710 is not expanded, the electronic device 700 can generate (e.g., draw) and display the application execution screen to correspond to the unexpanded screen display area as shown in reference numeral 730, and when the screen display area of the display 710 is expanded, the electronic device 700 can generate and display the application execution screen to correspond to the expanded screen display area as shown in reference numeral 735. According to an embodiment, when the screen display area changes, the electronic device 700 can change the size of the application-related frame buffer in response to the change in the screen display area. For example, when the screen display area increases, the electronic device 700 can increase the size of the frame buffer, and when the screen display area decreases, the frame buffer size can decrease. For example, the electronic device 700 can store the execution screen to be drawn in the frame buffer.
[0119] Figure 8a and Figure 8b This is a view illustrating the operation of an electronic device according to an embodiment.
[0120] According to an embodiment, electronic devices (e.g., Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 Electronic devices 300 or Figure 4 The electronic device 400 may include a display, wherein the display includes a motor (e.g., Figure 2 The motor 210 can move out of or into the area of the housing.
[0121] Reference Figure 8aThe electronic device can display an application execution screen 810, execution screen 820, or execution screen 830 on a display. According to an embodiment, each of execution screens 810, 820, and 830 may include at least one object 801 forming the execution screen. For example, at least one object 801 may include an application execution icon. For example, the electronic device can use a motor to move said portion of the display out of the housing while a portion of the display is inserted into and hidden by the housing. For example, as said portion of the display is moved out of the housing, the screen display area of the display can be expanded. For example, as the screen display area of the display expands, the electronic device can update the application execution screen. For example, the electronic device can draw the application execution screen to correspond to the expanded screen display area. For example, the electronic device can change the size, shape, and / or arrangement of the components of the execution screen (e.g., at least one object 801 forming the execution screen) to correspond to the size of the expanded screen display area. For example, when the time required for the electronic device to draw the execution screen is not commensurate with the speed at which the display is expanded using a motor, the screen display area of the display may have areas 825 and 835 where the execution screen is not displayed. For example, when the speed at which the display is moved using a motor (e.g., the speed used to control the display) is higher than the speed at which the execution screen is used to draw the application, the display may have areas 825 and 835 on the display where the execution screen is not displayed.
[0122] Reference Figure 8b According to embodiments, the electronic device can adjust the speed of the motor based on the performance of the application (e.g., the time required to draw the application's execution screen). For example, the electronic device can adjust the speed of the motor to correspond to the time required to draw the application's execution screen, such that the time required to move the display and the time required to draw the application's execution screen are equal to or close to each other. For example, when the speed at which the display is moved by using the motor (the speed for expanding the screen display area) corresponds to the time required to draw the application's execution screen, execution screen 840, execution screen 850, or execution screen 860 can be displayed in a shape corresponding to the moving or completed movement of the display. According to embodiments, each of execution screen 840, execution screen 850, and execution screen 860 may include at least one object 803 forming the execution screen. For example, at least one object 803 may include an application execution icon. For example, the electronic device can change the size, shape, and / or arrangement of the components of the execution screen (e.g., at least one object 803 forming the execution screen) to correspond to the size of the expanded screen display area. For example, with Figure 8aUnlike other displays, areas 825 and 835, where the execution screen is not displayed, may not appear in the display area of the monitor. For example, the electronic device may adjust the speed of the motor used to expand or shrink the display area of the monitor based on the performance of the application (e.g., the time required to draw the execution screen of the application), thereby seamlessly updating the execution screen corresponding to the shape of the monitor during the movement of the monitor and reducing frame drops.
[0123] Figure 9 This is a view illustrating the operation of an electronic device according to an embodiment. For example, Figure 9 This is to show the use of electronic devices (e.g., Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 Electronic devices 300 or Figure 4 The electronic device 400 extends the display speed and displays a graph showing the relationship between the application's frame buffer size. For example, curves 910 and 930 indicate the frame buffer size corresponding to the display size (e.g., the display's screen display area) that changes over time according to the motor speed, and bar graph 920 indicates the frame buffer size changing over time (e.g., the application's execution screen drawing state).
[0124] For example, referring to 910, the speed of the motor does not match the time required to draw the execution screen of the application. For example, the execution screen is only drawn to correspond to the state (e.g., the form of the display) of the display when the size of the frame buffer, as shown in reference numeral 920, corresponds to the size of the display's screen area, and the display may not actually have an area on the display where the execution screen is not displayed. For example, as shown in reference numeral 910, the speed at which a portion of the display moves out of the housing to expand the screen display area of the display may be greater than the speed at which the frame buffer is increased for the application. For example, the size of the frame buffer that is actually changed may be smaller than the size value of the frame buffer required to draw the execution screen corresponding to the changed size of the display's screen display area. In this case, a response delay time "a" may occur, and a difference "b" may be generated between the display's screen and the execution screen drawn by the application.
[0125] According to embodiments, the electronic device can adjust the speed of the motor of the extended display based on the performance of the application (e.g., the time required to draw the execution screen of the application). For example, referring to reference numeral 920, unlike reference numeral 910, when the time required to adjust the size of the application's frame buffer corresponds to the time required to move the display, the response latency time "a" and / or the difference "b" between the display's screen display area and the execution screen drawn by the application can be eliminated or reduced. For example, the size value of the frame buffer required to draw the execution screen corresponding to the size of the changed display's screen display area can correspond to the actual changed size of the frame buffer. For example, the display's screen display area can refer to the area viewed from outside the display and / or the area of the display used to display the execution screen.
[0126] Figure 10a and Figure 10b This is a view illustrating the operation of an electronic device according to an embodiment.
[0127] Reference Figure 10a According to an embodiment, electronic devices (e.g., Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 Electronic devices 300 or Figure 4 The electronic device 400 may include at least one application 1010. According to an embodiment, application 1010 may include multiple activities (e.g., a first activity 1011, a second activity 1013, and / or a third activity 1015). For example, an activity may represent a unit of execution screen for the application. For example, application 1010 may include multiple activities (e.g., execution screen; first activity 1011, second activity 1013, and / or third activity 1015). See also... Figure 10a Although application 1010 is shown to include a first activity 1011, a second activity 1013, and a third activity 1015, this is provided for illustrative purposes. For example, the number of activities included in the application is not limited to this.
[0128] Reference Figure 10b According to an embodiment, an electronic device (e.g., application performance manager 1020); Figure 4The application performance manager 431 can store performance information 1030, 1040, or 1050 of application 1010 (e.g., the time required to display the application's execution screen). For example, when displaying the execution screen of application 1010, the application performance manager 1020 can identify the time required to display the execution screen and store the identified time information. According to an embodiment, the application performance manager 1020 can store performance information 1031, 1033, 1041, 1043, 1051, or 1054 for each activity 1011, 1013, and 1015 of application 1010. For example, refer to... Figure 10b The performance information 1030 of the first application may include performance information 1031 of the first activity of the first application and / or performance information 1033 of the second activity of the first application. The performance information 1040 of the second application may include performance information 1041 of the first activity of the second application and / or performance information 1043 of the second activity of the second application. The performance information 1050 of the third application may include performance information 1051 of the first activity of the third application and / or performance information 1053 of the second activity of the third application. For example, when displaying the execution screen of application 1010, application performance manager 1020 may identify the time required to display the execution screen of each of activity 1011, activity 1013, or activity 1015 of application 1010, and may store information about the identified time. According to embodiments, the time required to display the execution screen for each activity may include: the time required to first draw the execution screen corresponding to the activity, the time required to change at least a portion of the execution screen corresponding to the most recent activity, and the average of the cumulative time required to change at least a portion of the execution screen corresponding to the activity. According to various embodiments, Figure 10b An example is shown, and the performance information managed by the electronic device (e.g., application performance manager 1020) is not limited to... Figure 10b The performance information shown is as follows.
[0129] According to an embodiment, when the area viewed outside the display is expanded or reduced, the electronic device can adjust the speed of the motor to control the display based on stored application performance information (performance information for each activity).
[0130] According to embodiments of this disclosure, electronic devices (e.g., Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 electronic devices Figure 4 The electronic device 400 (or the electronic device 1300 of Figures 13 to 14) may include: a housing; a motor (e.g., Figure 2 Motor 210 or Figure 3Motor 330); Display (e.g., Figure 1 Display module 160 Figure 2 The monitor 220, or Figure 3 The display 310 includes a region that can be moved out of or into the housing of the electronic device by means of a motor; a memory (e.g., Figure 1 Memory 130, Figure 2 memory 230, or Figure 3 The memory 360); and a processor operatively connected to the motor, display, and memory (e.g., Figure 1 Processor 120 Figure 2 Processor 240, Figure 3 Processor 390 (Figures 13-14, processor 1300). The memory can store instructions, which, when executed, cause the processor to perform the following operations: execute an application (e.g., ...). Figure 1 Application 146 or Figure 4 Application 401), in response to a specific event, moves an area of the display out of the housing by using a motor at a specific speed, identifies the time required to display the execution screen of the application on the display while moving the area, adjusts the speed of the motor based on the required time, and displays the execution screen of the application corresponding to the display state on the display while moving the area at the adjusted motor speed.
[0131] According to an embodiment, the instructions cause the processor to adjust the size of the frame buffer for the application based on the state in which the area of the display is moved.
[0132] According to an embodiment, the required time may include at least one of the following: the time required to determine the size of a view included in the application's execution screen, the time required to determine the layout of the view, and the time required to draw the execution screen into the application's frame buffer based on the determined view and the determined layout.
[0133] According to an embodiment, the instructions may cause the processor to: identify the time required to display the execution screen for each activity of the application, and may store information in memory about the time required to display the execution screen for each activity.
[0134] According to an embodiment, the time required to display the execution screen for each activity may include: the time required to first draw the execution screen corresponding to the activity, the time required to change at least a portion of the execution screen corresponding to the most recent activity, and the average of the cumulative time required to change at least a portion of the execution screen corresponding to the activity.
[0135] According to an embodiment, the instructions may cause the processor to adjust the speed of the motor based on the time required to display the execution screen corresponding to the currently executing activity included in the application.
[0136] According to an embodiment, the instructions may cause the processor to perform the following operation: adjust the speed of the motor within a range of a specific maximum motor speed and a specific minimum motor speed.
[0137] According to an embodiment, the instructions may cause the processor to perform the following operations: while executing multiple applications through multiple windows, add up the time required to display the execution screens of the multiple applications, and adjust the speed of the motor based on the added time.
[0138] According to an embodiment, the instructions may cause the processor to control the speed of the motor based on the performance previously stored in the application.
[0139] According to an embodiment, the instructions may cause the processor to perform the following operation: adjust the speed of the motor based on at least one of the processor's performance, the communication status of the electronic device, and the available capacity of the electronic device's memory.
[0140] Figure 11 This is a flowchart illustrating a method of operating an electronic device according to an embodiment.
[0141] According to an embodiment, during operation 1110, the electronic device (e.g., Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 Electronic devices 300 or Figure 4 The electronic device 400 can execute applications. According to an embodiment, the electronic device may include a display, wherein the display includes a region that can be moved out of or into the housing.
[0142] According to an embodiment, during operation 1115, the electronic device may keep the application in an idle state. For example, the electronic device may maintain the application's execution state (e.g., the application's first execution state or a previously executed state of the application, or the execution screen of the previously displayed application).
[0143] According to an embodiment, in operation 1120, the electronic device may determine whether to draw the application's execution screen to the application-associated frame buffer. For example, the electronic device may display the application's first execution screen by executing the application, or it may determine whether to draw the execution screen to change the execution screen of the currently executing application. According to an embodiment, the electronic device may perform operation 1130 when drawing the application's execution screen, and may perform operation 1115 when not drawing the application's execution screen.
[0144] According to an embodiment, in operation 1130, the electronic device can draw an application execution screen and can store application performance related to the drawing (e.g., the time required to draw the execution screen) in memory. According to an embodiment, in operation 1150, the electronic device can adjust the speed of the motor by using the stored application performance. According to an embodiment, the electronic device can identify (measure) application performance (e.g., drawing speed (time required to draw)) and can update the application performance-related information stored in memory whenever the application execution screen is drawn or updated, regardless of whether the display area of the screen changes.
[0145] According to an embodiment, in operation 1140, the electronic device can determine whether the screen display area of the display (e.g., the size of the screen display area) has changed (e.g., whether a portion of the display has moved out of or into the housing). For example, the electronic device can determine whether the screen display area of the display has changed by using a sensor. According to an embodiment, the electronic device can identify a reference speed of a motor by using a sensor. According to an embodiment, the electronic device can perform operation 1150 when the screen display area of the display is changing, and can perform operation 1115 when the screen display area of the display does not change (e.g., when the shape of the display does not change).
[0146] According to an embodiment, during operation 1150, the electronic device may determine the motor drive speed based on the application's performance. For example, when the display area of the screen begins to change, the electronic device may adjust (change) the motor's reference speed to a speed determined based on the application's performance. According to an embodiment, the application's performance may include the application's rendering performance. For example, rendering performance may include the time required for the application to perform screen rendering into the frame buffer.
[0147] According to an embodiment, in operation 1160, the electronic device can control the display by controlling a motor at a determined speed. For example, the electronic device can change the screen display area of the display at a determined speed. According to an embodiment, the electronic device can display (update) the application's execution screen on the display while it is moving or has finished moving. For example, the electronic device can display an execution screen generated corresponding to the state of the display while it is moving or has finished moving. According to an embodiment, since the motor speed is adjusted based on the application's performance (drawing performance) while the shape of the display is changed (e.g., expanded), the execution screen corresponding to the changed shape of the display can be displayed seamlessly, and frame drops can be reduced.
[0148] According to an embodiment, the electronic device can continuously perform operations 1150 and 1160 while the display area of the monitor is changing (e.g., by moving a portion of the monitor out of or into the housing using a motor). For example, the electronic device can identify (measure) the performance of an application (e.g., drawing speed) while the display area of the monitor is changing, and can determine the motor drive speed based on the identified application performance to control the motor. For example, the electronic device can continuously control the motor drive speed based on the application performance while the display area of the monitor is changing. Therefore, the electronic device can actively control the motor speed while the display area of the monitor is changing, and can display an execution screen corresponding to the changing display area.
[0149] Figure 12 This is a flowchart illustrating a method of operating an electronic device according to an embodiment.
[0150] According to an embodiment, during operation 1210, the electronic device (e.g., Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 Electronic devices 300 or Figure 4 The electronic device 400 can execute an application. According to an embodiment, the electronic device may include a display, wherein the display includes an area that can be moved out of or into a housing using a motor. For example, as a portion of the display moves out of or into the housing, the size of the area for displaying an execution screen on the display can change. According to an embodiment, the electronic device can display the execution screen of an application (e.g., the screen display area of the display) on the display. According to an embodiment, the electronic device can keep the application in an idle state until a specific event occurs. For example, the idle state of the application may refer to a state in which the application is executing (e.g., a first execution state of the application and / or a previously executed state of the application (e.g., a state that maintains the previously displayed execution screen of the application)).
[0151] According to an embodiment, in operation 1220, the electronic device may, in response to a specific event, move a portion of the display out of the housing at a specific speed using a motor. For example, a processor may use a motor to expand the screen display area of the display. According to an embodiment, the specific event may include user input for changing the shape (e.g., shape factor) of the display of the electronic device or the state of the electronic device.
[0152] According to an embodiment, in operation 1230, when a portion of the display is being expanded, the electronic device can identify the time required to display the execution screen of the application on the display.
[0153] According to an embodiment, the time required to display the application's execution screen may include at least one of the following: the time required to determine the size of a view included in the application's execution screen, the time required to determine the layout of the view, and the time required to draw the execution screen to a frame buffer for the application based on the determined view and the determined layout. For example, a view may refer to an object used to form the application's execution screen.
[0154] According to an embodiment, the processor 240 may store information in the memory 230 about the time required to execute the screen of the display application.
[0155] According to an embodiment, processor 240 can identify the time required to display the execution screen for each activity of the application, and can store information about the time required to display the execution screen for each activity in memory 230. For example, an activity can be a unit of execution screens included in the application. For example, the application can include multiple execution screens (e.g., activities). According to an embodiment, the time required to display the execution screen for each activity can include: the time required to first draw the execution screen corresponding to the activity, the time required to change at least a portion of the execution screen corresponding to the most recent activity, and the average of the cumulative time required to change at least a portion of the execution screen corresponding to the activity.
[0156] According to an embodiment, the electronic device can sum the time required to display the execution screens of the multiple applications while executing multiple applications through multiple windows, and can identify the total time required.
[0157] According to embodiments, the electronic device can adjust the size of the frame buffer for an application based on the shape of the externally viewed area of the display being expanded or reduced. For example, the frame buffer may be storage space for storing the execution screen of the application. According to embodiments, changing the shape of the display can change the time required to generate or store the execution screen of the application or the size of the frame buffer. For example, the time required to display the execution screen of the application may vary depending on the configuration of the execution screen (e.g., complexity), transparency, and visual effects applied. For example, the electronic device may increase the size of the frame buffer for the application as the externally viewed area of the display (e.g., the screen display area of the display) is expanded, and may decrease the size of the frame buffer for the application as the externally viewed area of the display is reduced.
[0158] According to an embodiment, during operation 1240, the electronic device can adjust the speed of the motor based on the time required for the execution screen of the display application.
[0159] According to an embodiment, the electronic device can adjust the speed of a motor based on the time required to display an execution screen, wherein the execution screen corresponds to the currently executing activity included in an application. According to an embodiment, the electronic device can adjust the motor speed within a range of a specific maximum motor speed and a specific minimum motor speed. According to an embodiment, while executing multiple applications in a multi-window manner, the electronic device adds up the time required to display the execution screens of the multiple applications and can adjust the motor speed based on the added time. For example, simultaneously displaying the execution screens of multiple applications requires a time obtained by adding the display (drawing) times of the application execution screens. For example, the processor 240 may need a first time required to draw the execution screen of a first application and a second time required to draw the execution screen of a second application. For example, when simultaneously displaying the execution screens of the first and second applications in a multi-window manner, a time obtained by adding the first and second times is needed to draw the entire screen (e.g., the execution screens of the first and second applications). For example, in this case, the electronic device can adjust the motor speed based on the time obtained by adding the first and second times.
[0160] According to an embodiment, the electronic device can control the speed of a motor based on performance information previously stored in the application. According to an embodiment, the performance information may include information about the time required to draw an execution screen supported by the application. For example, the information about the time required to draw the execution screen may include maximum drawing time, minimum drawing time, and average drawing time. For example, the performance information may be included in the application as metadata by the application's developer (or distributor). For example, when the application is distributed, metadata including performance information may be included in the application.
[0161] According to an embodiment, the electronic device may adjust the motor speed based on at least one of the electronic device's performance, its communication status, and the available capacity of its memory. For example, the time required to execute a screen display (e.g., drawing) application may vary depending on the current state of the electronic device (e.g., the electronic device's speed, available resources, communication status, and / or memory capacity). According to an embodiment, the electronic device may adjust the motor speed based on its state.
[0162] According to an embodiment, during operation 1250, the electronic device can display an application execution screen on the display corresponding to the expanded state of the display while simultaneously expanding a portion of the display area at an adjusted motor speed. For example, when the display area of the screen is expanded or reduced, the electronic device can create a new execution screen for the application to correspond to the changed shape of the display, and can display the new execution screen on the display. For example, the electronic device can display the application execution screen on the display in a shape corresponding to the shape (e.g., size) of the expanded display while the display is being expanded. According to an embodiment, the electronic device can adjust the motor speed to correspond to the time required to display the application execution screen, thereby reducing frame drops caused when expanding the display and seamlessly changing the application execution screen to correspond to the expanded display.
[0163] although Figure 12 The operation is illustrated when a portion of the display is moved out of the housing (e.g., when the size of the display's screen area is expanded), but this disclosure is not limited thereto. When a portion of the display is moved into the housing (e.g., when the size of the display's screen area is reduced), the electronic device can adjust the speed of the motor based on the time required for the display application to perform screen operations, and can perform screen operations on the display application corresponding to the reduced state of the display while the portion of the display is reduced at the adjusted motor speed.
[0164] Figure 13a and Figure 13b This is a view showing the front and rear surfaces of an electronic device in a slid-in state according to various embodiments of the present disclosure. Figure 14a and Figure 14b This is a view showing the front and rear surfaces of an electronic device in a slide-out state according to various embodiments of the present disclosure.
[0165] Figures 13a to 14b The electronic device 1300 shown (e.g., Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 Electronic devices 300 or Figure 4 The electronic device 400 may be at least partially similar to Figure 1 The electronic device 101 may also include other embodiments of the electronic device.
[0166] Reference Figures 13a to 14bThe electronic device 1300 may include: a first housing 1310 (e.g., a first housing structure or base housing); a second housing 1320 (e.g., a second housing structure or sliding housing) coupled to the first housing 1310 along a specific first direction (① direction) and with a specific reciprocating distance; and a flexible display (e.g., an expandable display) 1330 arranged to be supported by at least a portion of the first housing 1310 and the second housing 1320. According to an embodiment, the electronic device 1300 may, in a slid-out state, form at least partially the same plane as at least a portion of the first housing 1310, and may include a flexible member (or a flexible support member) at least partially accommodated in the interior space of the second housing 1320 in a slid-in state. According to an embodiment, at least a portion of the flexible display 1330 may be supported by the flexible member in the slid-in state while being accommodated in the interior space of the second housing 1320, such that at least a portion of the flexible display 1330 is not viewed. According to an embodiment, when viewed from the outside, at least a portion of the flexible display 1330 in a slid-out state can be supported by a bendable support member, wherein the bendable support member at least partially forms the same plane as the plane of the first housing 1310.
[0167] According to various embodiments, the electronic device 1300 may include: a front surface 1300a (e.g., a first surface); a rear surface 1300b (e.g., a second surface) facing a direction opposite to that of the front surface 1300a; and side surfaces surrounding the space between the front surface 1300a and the rear surface 1300b. According to embodiments, the electronic device 1300 may include a first housing 1310 and a second housing 1320, wherein the first housing 1310 includes a first side member 1311 and the second housing 1320 includes a second side member 1321. According to embodiments, the first side member 1311 may include: a first side surface 13111 having a first length along a first direction (① direction); a second side surface 13112 extending along a direction substantially perpendicular to the first side surface 13111 to have a second length longer than the first length; and a third side surface 13113 extending from the second side surface 13112 substantially parallel to the first side surface 13111 and having a first length. According to an embodiment, the first side member 1311 may be at least partially formed of a conductive material (e.g., a metal). According to an embodiment, the first side member 1311 may include a first support member 1312 extending into at least a portion of the interior space of the first housing 1310. For example, the first side member 1311 may be integrally formed with the first support member 1312. Alternatively, the first support member 1312 may be separately formed from and attached to the first side member 1311.
[0168] According to various embodiments, the second side member 1321 may include: a fourth side surface 13211, at least partially corresponding to the first side surface 13111 and having a third length; a fifth side surface 13212, extending from the fourth side surface 13211 in a direction substantially parallel to the second side surface 13112 and having a fourth length longer than the third length; and a sixth side surface 13213, extending from the fifth side surface 13212 to correspond to the third side surface 13113 and having a third length. According to embodiments, the second side member 1321 may be at least partially formed of a conductive material (e.g., a metal). According to embodiments, at least a portion of the second side member 1321 may include a second support member 1322 extending into at least a portion of the interior space of the second housing 1320. For example, the second side member 1321 may be integrally formed with the second support member 1322. Alternatively, the second support member 1322 may be separately formed from and coupled to the second side member 1321.
[0169] According to an embodiment, the first side surface 13111 and the fourth side surface 13211, and / or the third side surface 13113 and the sixth side surface 13213, can be slidably engaged with each other. According to one embodiment, since at least a portion of the first side surface 13111 can overlap with at least a portion of the fourth side surface 13211, at least a portion of the first side surface 13111 is prevented from being seen from the outside in the slid-in state. According to one embodiment, since at least a portion of the third side surface 13113 can overlap with at least a portion of the sixth side surface 13213, at least a portion of the third side surface 13113 is prevented from being seen from the outside in the slid-in state. According to an embodiment, in the slid-in state, at least a portion of the first support member 1312 can overlap with the second support member 1322, and the remaining portion of the first support member 1312 can be viewed from the outside. Therefore, the first support member 1312 may include a non-overlapping portion 1312a that does not overlap with the second support member 1322 and an overlapping portion 1312b that overlaps with the second support member 1322. According to an embodiment, the non-overlapping portion 1312a and the overlapping portion 1312b may be integrally formed. According to an embodiment, the non-overlapping portion 1312a and the overlapping portion 1312b may be separately disposed and structurally joined to each other.
[0170] According to various embodiments, the first housing 1310 may include a first subspace "A" corresponding to the non-overlapping portion 1312a and / or a second subspace "B" corresponding to the overlapping portion 1312b in the first space. According to embodiments, the first subspace "A" and the second subspace "B" may be at least partially connected to or separated from each other. According to embodiments, the first subspace "A" may be formed to have a larger spatial volume than the second subspace "B". This is due to the overlapping structure of the second support member 1322 overlapping the first support member 1312 in the region corresponding to the second subspace "B". According to embodiments, the electronic device 1300 may include a plurality of electronic components (e.g., camera module 1316, sensor module 1317, flash 1318, motherboard (e.g., ...) arranged in the first space of the first housing 1310. Figure 4 The motherboard 1350) or battery (e.g., Figure 4 (e.g., battery 1351). According to an embodiment, the first subspace "A" may be used as an area for arranging electronic components (e.g., camera module 1316, sensor module 1317, or flash 1318) that require a large mounting space, a thick mounting thickness, or should operate while avoiding overlapping structures. According to an embodiment, the second subspace "B" may be used for electronic components (e.g., Figure 4 The motherboard 1350 PCB or battery (e.g., Figure 4 The area of the battery 1351): These electronic components require less installation space, require thinner installation thickness, or operate regardless of the overlapping structure.
[0171] According to various embodiments, the front surface 1300a and rear surface 1300b of the electronic device 1300 may have areas that vary depending on whether it is in a slid-in or slid-out state. According to embodiments, the electronic device 1300 may include a first rear cover 1313 disposed in at least a portion of a first housing 1310 in the rear surface 1300b and a second rear cover 1323 disposed on at least a portion of a second housing 1320. According to embodiments, the first rear cover 1313 and / or the second rear cover 1323 may be arranged in conjunction with a first support member 1312 and a second support member 1322. According to embodiments, the first rear cover 1313 may be integrally formed with a first side member 1311. For example, the second rear cover 1323 may be integrally formed with a second side member 1321. According to embodiments, the first rear cover 1313 and / or the second rear cover 1323 may be formed from a polymer, coated or colored glass, ceramic, metal (e.g., aluminum, stainless steel (STS), or magnesium), or a combination of at least two of these materials. According to an embodiment, a first rear cover 1313 may extend to at least a portion of a first side member 1311. According to an embodiment, a second rear cover 1323 may extend to at least a portion of a second side member 1321. According to an embodiment, at least an extended portion of the first side member 1311 of the first rear cover 1313 may be formed as a curved surface. According to an embodiment, at least an extended portion of the second side member 1321 of the second rear cover 1323 may be formed as a curved surface. According to an embodiment, at least a portion of the first support member 1312 may be replaced by the first rear cover 1313, and at least a portion of the second support member 1322 may be replaced by the second rear cover 1323.
[0172] According to various embodiments, the electronic device 1300 may include a flexible display 1330, wherein the flexible display 1330 is arranged to be supported by at least a portion of a first housing 1310 and a second housing 1320. According to one embodiment, the flexible display 1330 may include a first portion 1330a (e.g., a planar portion) that is always viewed from the outside, and a second portion 1330b (e.g., a flexible portion) that extends from the first portion 1330a and slides at least partially within the interior space of the second housing 1320, such that the second portion 1330b is not viewed when slid in. According to an embodiment, the first portion 1330a may be arranged to be supported by the first housing 1310, and the second portion 1330b may be arranged to be at least partially supported by a flexible member. According to one embodiment, at least a portion of the second portion 1330b of the flexible display 1330 may extend from the first portion 1330a while being supported by a flexible member, and may form a plane substantially identical to the first portion 1330a when viewed from the outside. According to an embodiment, at least a portion of the second portion 1330b of the flexible display 1330 can be arranged to slide within the internal space of the second housing 1320, such that when the first housing 1310 slides along a specific second direction (② direction), the at least a portion of the second portion 1330b is not visible from the outside. Therefore, in the electronic device 1300, as the first housing 1310 can slide slidably from the second housing 1320 along a specific direction, the display area of the flexible display 1330 can be changed.
[0173] According to various embodiments, the first housing 1310 and the second housing 1320 are slidably operable relative to each other to vary over their entire width. According to an embodiment, the electronic device 1300 can be configured in a slid-in state to have a first width W1 from the second side surface 13112 to the fifth side surface 13212. According to an embodiment, the electronic device 1300 can be configured in a slid-out state to have a third width W3 larger than the first width W1 by moving a portion of the flexible member sliding within the interior space of the second housing 1320. For example, the flexible display 1330 may have a display area substantially corresponding to the first width W1 in the slid-in state and an extended display area substantially corresponding to the third width W3 in the slid-out state.
[0174] According to various embodiments, the sliding operation of the electronic device 1300 can be performed by user operation. For example, the electronic device 1300 can be switched from a sliding-out state to a sliding-in state by operation of the flexible display 1330 pushed along a designated first direction (① direction) via user manipulation. According to an embodiment, the electronic device 1300 can be switched from a sliding-in state to a sliding-out state by operation of the flexible display 1330 pushed along a designated second direction (② direction) via user manipulation. According to an embodiment, the electronic device 1300 can maintain the sliding-in and sliding-out states when the first housing 1310 is pressed from the second housing 1320 along the sliding-in or sliding-out direction from a specific inflection point. According to an embodiment, the electronic device 1300 can be configured to allow the first housing 1310 to slide out along a specific first direction (e.g., ① direction) by manipulating a lock exposed via the rear surface 1300b of the electronic device 1300. According to an embodiment, the electronic device 1300 can be automatically operated via a drive mechanism (e.g., a drive motor, a reduction module, and / or a gear assembly) arranged in the internal space of the first housing 1310 and / or the second housing 1320. According to an embodiment, when operated by a processor (e.g., Figure 1 When the processor 120 detects a transition event between a slide-in state and a slide-out state, the electronic device 1300 can be configured to control the operation of the second housing 1320 via a drive mechanism. According to an embodiment, the processor of the electronic device 1300 (e.g., ...) Figure 1 The processor 120 can control the flexible display 133 to display objects and execute applications in various ways according to a slide-in state, a slide-out state, or an intermediate state (e.g., including a free-stop state), in response to changes in the display area of the flexible display 1330. For example, an intermediate state can refer to a state between a slide-in state and a slide-out state. For example, a state that changes from a slide-in state to a slide-out state can be referred to as an intermediate state. As another example, a state that changes from a slide-out state to a slide-in state can be referred to as an intermediate state.
[0175] According to various embodiments, electronic device 1300 may include at least one of the following: input device 1303, sound output devices 1306 and 1307, sensor modules 1304 and 1317, camera modules 1305 and 1316, connector port 1308, key input device 1319, or indicator (not shown). According to embodiments, electronic device 1300 may be configured such that at least one of the above components is omitted or other components are additionally included.
[0176] According to various embodiments, input device 1303 may include a microphone. According to one embodiment, input device 1303 may include a plurality of microphones arranged to sense the direction of sound. Sound output devices 1306 and 1307 may include a speaker. Sound output devices 1306 and 1307 may include a call receiver 1306 and an external speaker 1307. According to one embodiment, the external speaker 1307 may be disposed in a second housing and configured to transmit sound to the outside through a first speaker aperture 1307a. According to one embodiment, the external speaker 1307 is disposed within the interior space of the second housing 1320 to provide high-quality sound to the user regardless of the sliding operation of the first housing 1310. According to one embodiment, a connector port 1308 may be disposed together with the external speaker 1307 within the interior space of the second housing 1320. According to one embodiment, in the slid-in state, the connector port 1308 may be disposed within the interior space of the first housing 1310 and may face outward through a connector port aperture (not shown) formed in the second housing 1320. In this configuration, connector port 1308 can be configured to be covered in a slid-in state to prevent external viewing through the second housing 1320. According to an embodiment, receiver 1306 can be configured to correspond to the external environment within the internal space of the first housing 1310. In this configuration, the first housing may include a sound output aperture. According to an embodiment, the sound output aperture can maintain sound output performance and can be covered to prevent external viewing through at least a portion of the second housing 1320. According to an embodiment, sound output devices 1306 and 1307 may include loudspeakers (e.g., piezoelectric loudspeakers) that operate without a separate speaker aperture.
[0177] According to an embodiment, sensor module 1304 and sensor module 1317 may generate electrical signals or data values corresponding to the internal operating state or external environmental state of electronic device 1300. Sensor module 1304 and sensor module 1317 may include, for example, a first sensor module 1304 (e.g., a proximity sensor or illuminance sensor) disposed on the front surface 1300a of electronic device 1300 and / or a second sensor module 1317 disposed on the rear surface 1300b of electronic device 1300. According to an embodiment, the first sensor module 1304 may be disposed below the flexible display 1330 on the front surface 1300a of electronic device 1300. According to an embodiment, the first sensor module 1304 and / or the second sensor module 1317 may include at least one of a proximity sensor, illuminance sensor, time-of-flight (TOF) sensor, ultrasonic sensor, fingerprint sensor, gesture sensor, gyroscope sensor, pressure sensor, magnetic sensor, accelerometer, grip sensor, color sensor, infrared (IR) sensor, biometric sensor, temperature sensor, or humidity sensor.
[0178] According to various embodiments, camera module 1305 and camera module 1316 may include a first camera module 1305 disposed on the front surface 1300a of electronic device 1300 and a second camera module 1316 disposed on the rear surface 1300b of electronic device 1300. According to an embodiment, electronic device 1300 may include a flash 1318 located near the second camera module 1316. According to an embodiment, camera module 1305 and camera module 1316 may include at least one lens, an image sensor, and / or an image signal processor. According to an embodiment, the first camera module 1305 may be disposed below flexible display 1330 and may be configured to capture a subject through a portion of the effective area of flexible display 1330. According to an embodiment, flash 1318 may include, for example, a light-emitting diode or a xenon lamp.
[0179] According to various embodiments, the first camera module 1305 in camera module 1305 and camera module 1316 and / or some sensor modules 1304 in sensor module 1304 and sensor module 1317 may be arranged to contact the external environment within the internal space of electronic device 1300 via an opening or transmissive area formed by flexible display 1330. According to embodiments, the area of flexible display 1330 facing the first camera module 1305, while serving as part of the area for displaying content, may include a transmissive area having a specified transmittance. According to embodiments, the transmissive area may be formed to have a transmittance in the range of about 5% to about 20%. Such a transmissive area may include an area overlapping with an effective area (e.g., viewing angle area) of the first camera module 1305 for transmitting light used to form an image on an image sensor. For example, the transmissive area of flexible display 1330 may include an area with a lower pixel density and / or wiring density compared to the surrounding area. For example, the transmissive area may be replaced by the opening described above. For example, some camera modules 1305 may include an under-display camera (UDC). According to some embodiments, some sensor modules 1304 may be arranged to perform their inherent functions within the internal space of the electronic device 1300 without being visually exposed via the flexible display 1330. According to embodiments, the second camera module 1316 in camera modules 1305 and 1316 and / or the sensor module 1317 in sensor modules 1304 and 1317 may be arranged within the internal space of the electronic device 1300 via at least a portion of the first housing (e.g., the first rear cover 1313) to correspond to the external environment. In this case, the second camera module and / or sensor module 1317 may be arranged at a specific position on the first housing 1310 that is always visible from the outside, regardless of whether it is in a slip-in or slip-out state.
[0180] Figure 15This is an exploded perspective view of an electronic device according to various embodiments of the present disclosure.
[0181] Reference Figure 15 The electronic device 1300 may include: a first housing 1310 having a first space; a second housing 1320 slidably coupled to the first housing 1310 and including the second space; a flexible member 1340 arranged to be at least partially rotatable in the second space; a flexible display 1330 arranged to be supported by at least a portion of the flexible member 1340 and the first housing 1310; and at least one sliding hinge module 1360 pressing the first housing 1310 in a sliding-in direction and / or a sliding-out direction from the second housing 1320. According to an embodiment, the hinge module 1360 may include a motor for moving a portion of the display into and / or out of the housing. According to an embodiment, the first space of the first housing 1310 may be provided by a combination of a first support housing 1310a (e.g., a front support housing) and a second support housing 1310b (e.g., a rear support housing). According to some embodiments, at least a portion of the first support housing 1310a and / or the second support housing 1310b may include a first side member 1311 or a first support member 1312 (e.g., Figure 3 At least a portion of the first support member 1312 of B, or the first support member 1312 may be used instead. According to an embodiment, the electronic device 1300 may include a main substrate 1350 disposed in the first space. According to an embodiment, the electronic device 1300 may include a camera module (e.g., ...) disposed in the first space. Figure 3 B's camera module 1316) or sensor module (e.g., Figure 3 (Sensor module 1317 of B). According to an embodiment, the flexible member 1340 may be arranged having one end fixed to the first housing 1310 and an opposite end at least partially housed in a second space of the second housing 1320 that is rotatable. According to an embodiment, the flexible member 1340 may include a plurality of multi-bars rotatably connected to each other. According to an embodiment, the flexible member 1340 may be supported by an axial support member 1341 disposed in the second space. According to an embodiment, the support member 1341 may include a support roller rotatably disposed in the second space. According to some embodiments, the electronic device 1300 may include a tension providing member, wherein the tension providing member is disposed in the internal space of the electronic device 1300 and provides tension to prevent the flexible display 1330 from sinking during movement by supporting the rear surface of the flexible member 1340. According to an embodiment, the tension providing member may include a tension band comprising a metallic material.
[0182] According to various embodiments, the flexible member 1340 can be at least partially accommodated in the second space in a slid-in state, and at least partially slid out of the second space in a slid-out state to form a plane substantially the same as the first housing 1310. Therefore, the display area of the flexible display 1330, supported by the first housing 1310 and the flexible member 1340, can vary according to the sliding operation. According to embodiments, the electronic device 1300 may further include a guide rail 1342, wherein the guide rail 1342 is arranged on the side surfaces of the first support housing 1310a and the second support housing 1310b joined together and is guided into the interior space of the second housing 1320. According to some embodiments, the electronic device 1300 may include a second support member (e.g., ...) arranged in the second housing 1320. Figure 3 At least one cover member 13241 or 13242 on the opposite side surface of the second support member 1322 of B. According to an embodiment, at least one cover member 13241 and 13242 may include a fourth side surface arranged to at least partially cover the second housing 1320 (e.g., Figure 2 The first cover member 13241 of the fourth side surface 13211 of A and the sixth side surface 13213 arranged to at least partially cover the second housing 1320 (e.g., Figure 2 The second cover member 13242 of the sixth side surface 13213 of A).
[0183] According to embodiments of this disclosure, a method for operating a display (e.g., Figure 1 Display module 160 Figure 2 220 or Figure 3 Electronic devices (e.g., display 310) Figure 1 Electronic device 101 Figure 2 Electronic devices 200 Figure 3 Electronic devices 300, Figure 4 Electronic device 400 or Figure 13 to Figure 15 Electronic device 1300 (wherein the display includes a motor (e.g., Figure 2 Motor 210 or Figure 3 The method for moving the motor 330 (into or out of the housing area) may include: performing an application (e.g., Figure 1 Application 146 or Figure 4 Application 401), in response to a specific event, moves an area of the display out of the housing by using a motor at a specific reference speed, identifies the time required to display the execution screen of the application during the movement of the area, adjusts the speed of the motor based on the required time, and displays the execution screen of the application corresponding to the state of the display while moving the area based on the adjusted speed of the motor.
[0184] According to an embodiment, the method may include: adjusting the size of a frame buffer for an application based on the state in which the area of the display is moved.
[0185] According to an embodiment, the required time may include at least one of the following: the time required to determine the size of a view included in the application's execution screen, the time required to determine the layout of the view, and the time required to draw the execution screen into a frame buffer for the application based on the determined view and the determined layout.
[0186] According to an embodiment, the step of identifying the required time may include: identifying the time required to display the execution screen for each activity of the application, and storing information about the time required to display the execution screen for each activity in the memory of the electronic device.
[0187] According to an embodiment, the time required to display the execution screen for each activity may include: the time required to first draw the execution screen corresponding to the activity, the time required to change at least a portion of the execution screen corresponding to the most recent activity, and the average of the cumulative time required to change at least a portion of the execution screen corresponding to the activity.
[0188] According to an embodiment, the step of adjusting the speed of the motor may include adjusting the speed of the motor based on the time required to display the execution screen corresponding to the currently executed activity included in the application.
[0189] According to an embodiment, the step of adjusting the speed of the motor may include: adjusting the speed of the motor within a range of a specific maximum motor speed and a specific minimum motor speed.
[0190] According to an embodiment, the method may include: while executing multiple applications through multiple windows, adding up the time required to display the execution screens of the multiple applications, and adjusting the speed of the motor based on the added time.
[0191] According to an embodiment, the step of controlling the speed of the motor may include controlling the speed of the motor based on performance information previously stored in the application.
[0192] According to an embodiment, the step of controlling the speed of the motor may include adjusting the speed of the motor based on at least one of the processor's performance, the communication status of the electronic device, and the available capacity of the electronic device's memory.
[0193] The electronic device according to various embodiments can be one of a variety of types of electronic devices. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. According to embodiments of this disclosure, the electronic device is not limited to those described above.
[0194] It should be understood that the various embodiments of this disclosure and the terminology used therein are not intended to limit the technical features set forth herein to the specific embodiments, but rather to include various changes, equivalents, or substitutions to the respective embodiments. In the description of the drawings, similar reference numerals may be used to refer to similar or related elements. It will be understood that nouns in the singular form corresponding to terms may include one or more things unless the relevant context clearly indicates otherwise. As used herein, each of the phrases such as “A or B,” “at least one of A and B,” “at least one of A or B,” “A, B, or C,” “at least one of A, B, and C,” and “at least one of A, B, or C” may include any one or all possible combinations of the items enumerated together with the corresponding phrase among the plurality of phrases. As used herein, terms such as “first” and “second” or “first” and “second” may be used to simply distinguish the respective component from another component and do not limit the component in other respects (e.g., importance or order). It will be understood that, whether the terms “operably” or “communically” are used or not, if an element (e.g., a first element) is referred to as “combined with another element (e.g., a second element),” “combined to another element (e.g., a second element),” “connected to another element (e.g., a second element),” or “attached to another element (e.g., a second element)”, it means that the first element can be directly (e.g., wiredly) connected to the second element, wirelessly connected to the second element, or connected to the second element via a third element.
[0195] As used in connection with various embodiments of this disclosure, the term "module" may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with other terms (e.g., "logic," "logic block," "part," or "circuit"). A module may be a single integrated component adapted to perform one or more functions, or the smallest unit or part of such a single integrated component. For example, according to embodiments, a module may be implemented in the form of an application-specific integrated circuit (ASIC).
[0196] The various embodiments set forth herein can be implemented as software (e.g., program 140) containing one or more instructions readable by a machine (e.g., electronic device 101) stored in a storage medium (e.g., internal memory 136 or external memory 138). For example, under the control of a processor, the processor (e.g., processor 120) of the machine (e.g., electronic device 101) can invoke and execute at least one of the one or more instructions stored in the storage medium, with or without the use of one or more other components. This enables the machine to operate to perform at least one function according to the invoked at least one instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. Machine-readable storage media may be provided in the form of non-transitory storage media. The term "non-transitory" means only that the storage medium is a tangible device and does not include signals (e.g., electromagnetic waves), but this term does not distinguish between data being stored semi-permanently in the storage medium and data being temporarily stored in the storage medium.
[0197] According to embodiments, methods according to various embodiments of this disclosure may be included and provided in a computer program product. The computer program product can be traded as a product between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., a compact disk read-only memory (CD-ROM)) or via an app store (e.g., the Play Store). TM The computer program product may be published online (e.g., downloaded or uploaded), or may be distributed directly between two user devices (e.g., smartphones) (e.g., downloaded or uploaded). If published online, at least a portion of the computer program product may be temporarily generated, or at least a portion of the computer program product may be temporarily stored in a machine-readable storage medium (such as the memory of a manufacturer's server, an app store's server, or a forwarding server).
[0198] According to various embodiments, each of the above-described components (e.g., a module or program) may include a single entity or multiple entities, and some of the multiple entities may be separately disposed in different components. According to various embodiments, one or more of the above-described components may be omitted, or one or more other components may be added. Optionally or additionally, multiple components (e.g., modules or programs) may be integrated into a single component. In this case, according to various embodiments, the integrated component may still perform the one or more functions of each of the multiple components in the same or similar manner as the corresponding component of the multiple components performed one or more functions before integration. According to various embodiments, the operations performed by a module, program, or other component may be performed sequentially, in parallel, repeatedly, or heuristically, or one or more of the operations may be run in a different order or omitted, or one or more other operations may be added.
Claims
1. An electronic device comprising: The housing includes a first housing and a second housing movably coupled to the first housing; Electric motor; A flexible display, supported by at least a portion of a first housing and a second housing, and including a movable region, wherein the movable region is configured to be exposed to the outside of the housing and / or housed within the interior space of the housing by means of the motor; Memory; and The processor is operatively connected to the motor, the flexible display, and the memory. The memory includes instructions that, when executed, cause the processor to perform the following operations: Execute the application; In response to a specific event for moving the movable area of the flexible display, the movable area of the flexible display is moved at a specific reference speed using the motor to expose it to the outside of the housing, wherein the specific event includes a change in the state of the electronic device that is input by the user or sensed. Based on the information stored in the memory, while moving the movable area, the time required to generate the execution screen of the application corresponding to the screen display area of the flexible display exposed outside the housing is identified; The speed of the motor is adjusted based on the required time, such that the time for moving the movable area of the flexible display to form the screen display area corresponds to the required time; and While the movable area moves at the adjusted speed of the motor, an execution screen for the application is generated and displayed on the screen display area of the flexible display exposed outside the housing.
2. The electronic device according to claim 1, wherein, When the instruction is executed, it causes the processor to perform the following operations: The size of the frame buffer for the application is adjusted based on the state in which the movable area of the flexible display is moved.
3. The electronic device according to claim 1, wherein, The required time is identified based on information including at least one of the following times: The time required to determine the size of the views included in the execution screen of the application, the time required to determine the layout of the views, and the time required to draw the execution screen to the frame buffer for the application based on the determined views and the determined layout. In this context, a view is an object used to form the execution screen.
4. The electronic device according to claim 1, wherein, When the instruction is executed, it causes the processor to perform the following operations: Based on the application's metadata, identify the time required to display the execution screen for each activity of the application; as well as The memory stores information about the time required to display the execution screen for each activity. An activity is the unit of execution on the screen.
5. The electronic device according to claim 4, wherein, The time required to display the execution screen for each activity includes: The time required to initially draw the execution screen corresponding to the activity; The time required to change at least a portion of the execution screen corresponding to the recent activity; and The average cumulative time required to change at least a portion of the execution screen corresponding to each of the activities.
6. The electronic device according to claim 4, wherein, When the instruction is executed, it causes the processor to perform the following operations: The speed of the motor is adjusted based on the time required to display the execution screen corresponding to the currently executing activity included in the application.
7. The electronic device according to claim 1, wherein, When the instruction is executed, it causes the processor to perform the following operations: The speed of the motor is adjusted within a range of a specific maximum motor speed and a specific minimum motor speed.
8. The electronic device according to claim 1, wherein, When the instruction is executed, it causes the processor to perform the following operations: While executing multiple applications in a multi-window manner, the time required to display the execution screens of the multiple applications is summed, and The speed of the motor is adjusted based on the sum of the times.
9. The electronic device according to claim 1, wherein, When the instruction is executed, it causes the processor to perform the following operations: The speed of the motor is controlled based on performance information previously stored in the application, wherein the performance information includes information about the time required to draw the execution screen of the application.
10. The electronic device according to claim 1, wherein, When the instruction is executed, it causes the processor to perform the following operations: The time required to generate the execution screen of the application is determined based on at least one of the processor's performance, the communication status of the electronic device, and the available capacity of the electronic device's memory.
11. A method for operating an electronic device including a flexible display, wherein, The flexible display includes a movable region, wherein the movable region is configured to be exposed to the outside of the housing and / or housed within the internal space of the housing by means of a motor, the method comprising: Execute the application; In response to a specific event for moving the movable area of the flexible display, the movable area of the flexible display is moved at a specific reference speed using the motor to expose it to the outside of the housing, wherein the specific event includes a change in the state of the electronic device that is input by the user or sensed. Based on information stored in the memory of the electronic device, while moving the movable area, the time required to generate the execution screen of the application corresponding to the screen display area of the flexible display exposed outside the housing is identified; The speed of the motor is adjusted based on the required time, such that the time for moving the movable area of the flexible display to form the screen display area corresponds to the required time; and While the movable area moves at the adjusted speed of the motor, an execution screen for the application is generated and displayed on the screen display area of the flexible display exposed outside the housing.
12. The method according to claim 11, wherein, The size of the frame buffer for the application is adjusted based on the state in which the movable area of the flexible display is moved.
13. The method according to claim 11, wherein, The steps for adjusting the speed of the motor include: The speed of the motor is adjusted based on the time required to display the execution screen corresponding to the currently executing activity included in the application. An activity is the unit of execution on the screen.
14. The method according to claim 11, wherein, The steps for controlling the speed of the motor include: The speed of the motor is controlled based on performance information previously stored in the application, wherein the performance information includes information about the time required to draw the execution screen of the application.
15. The method according to claim 11, wherein, The steps for controlling the speed of the motor include: The time required to generate the execution screen of the application is determined based on at least one of the processor's performance, the communication status of the electronic device, and the available capacity of the electronic device's memory.